Python初识文本基本操作
初识文本的基本操作
怎么在文件里面写内容和都内容
文件操作过程
1,找到文件
文件路径
2,打开文件
file_obj=file(文件路径,模式)
3,文件操作,读写文件
file_obj.read() #将所有读入内存
file_obj.readlines() #将所有读入内存然后按照一行行隔开,会得到一个一行为单位的列表
for line in file_obj:
#每次循环,只读一行。避免全部读入内存
file_obj.write() #写
file_obj.writeline() #一行行写
4,关闭文件
file_obj.close()
file_obj = file ("文件路径","模式")
打开文件的模式有:
.r,以只读方式打开文件
.w,打开一个文件只用于写入
.a,打开一个文件用于追加
.rw 打开一个文件用于读写
操作
新建一个log.txt 内容如下
alex;123;1
eric;456;2
新建一个脚本file_test.py
#!/usr/bin/python
# -*- coding:utf-8 -*-
file_obj = file('/server/scripts/log.txt','r')
print file_obj.read()
file_obj.close()
执行 全部读取出来了
python file_test.py
alex;123;1
eric;456;2
把read修改成readlines然后执行 按照列表方式读取出来
python file_test.py
['alex;123;1\n', 'eric;456;2\n']
修改代码
#!/usr/bin/python
# -*- coding:utf-8 -*-
file_obj = file('/server/scripts/log.txt','r+')
#print file_obj.read()
#print file_obj.readlines()
line_list = file_obj.readlines()
my_list = []
for ele in line_list:
line = ele.strip()
#ele为字符串'alex;123;1\n'去掉尾部的换行 line='alex;123;1'
value_list = line.split(';')
#使用;作为分隔符生成一个列表value_list为='alex','123','1']
last_value = int(value_list[-1])
#把尾部字符1转换成数值赋值给last_value
last_value += 1
#last_value自增1为2
value_list[-1] = str(last_value)
#把自增数值为2在抓换成字符赋值给最后一位value_list=['alex','123','2']
value_str = ';'.join(value_list)
#使用;作为连接符把列表转换成字符串value_str='alex;123;2'
my_list.append(value_str)
#空的列表赋值my_list=['alex;123;2']一个元素为alex;123;2
my_str = '\n'.join(my_list)
#使用换行符\n作为连接符号拆分列表,前面执行过两次循环了my_list=['alex;123;2','eric;456;3']
#拆分以后变成字符串才能写入到文件my_str='alex;123;2\neric;456;3'
file_obj.write(my_str)
#把my_str字符串写入到文件log.txt
file_obj.flush()
file_obj.close()
执行
python file_test.py
屏幕没有输出但是文件log.txt内容变了(把最后一行数值加1追加到尾部)
alex;123;1
eric;456;2
alex;123;2
eric;456;3
Python初识文本基本操作的更多相关文章
- Python初识与简介【开篇】
目录 1.扯淡 2.Python历史 3.Python简介 4.Python应用 5.为什么是python而不是其他语言? 6.Python的种类 7.Python的特点 8.Python设计哲学 9 ...
- python初识(二)
目录: 进制 基本数据类型 整形 布尔值 字符串 列表 元祖 字典 集合 range & enumerate 一.进制 二进制转换十进制计算: 十进制:==47 一个字节公式:==128 64 ...
- python统计文本中每个单词出现的次数
.python统计文本中每个单词出现的次数: #coding=utf-8 __author__ = 'zcg' import collections import os with open('abc. ...
- 小学生绞尽脑汁也学不会的python(初识面对对象)
小学生绞尽脑汁也学不会的python(初识面对对象) 一. 面向对象思想 1. 面向过程. 重点在"过程". 按照实物的发展流程. 先干嘛,后干嘛, 最后干嘛.... 优点: 简单 ...
- Python菜鸟文本处理4种方法
自从认识了python这门语言,所有的事情好像变得容易了,作为小白,逗汁儿今天就为大家总结一下python的文本处理的一些小方法. 话不多说,代码撸起来. python大小写字符互换 在进行大小写互换 ...
- Python Tkinter 文本框(Entry)
Python Tkinter 文本框用来让用户输入一行文本字符串. 你如果需要输入多行文本,可以使用 Text 组件. 你如果需要显示一行或多行文本且不允许用户修改,你可以使用 Label 组件. 语 ...
- #Python绘制 文本进度条,带刷新、时间暂缓的
#Python绘制 文本进度条,带刷新.时间暂缓的 #文本进度条 import time as T st=T.perf_counter() print('-'*6,'执行开始','-'*6) maxx ...
- python根据文本生成词云图
python根据文本生成词云图 效果 代码 from wordcloud import WordCloud import codecs import jieba #import jieba.analy ...
- Python生成文本格式的excel\xlwt生成文本格式的excel\Python设置excel单元格格式为文本\Python excel xlwt 文本格式
Python生成文本格式的excel\xlwt生成文本格式的excel\Python设置excel单元格格式为文本\Python excel xlwt 文本格式 解决: xlwt 中设置单元格样式主要 ...
随机推荐
- centos mail使用外部SMTP发送邮件
1.安装mailx yum install mailx -y 安装好后,编辑配置文件 mailx -V 12.4 7/29/08 <<mailx的版本号 rpm -qc mailx /e ...
- Jmeter新建用例图示
添加线程组 添加HTTP请求 编辑HTTP请求 添加HTTP信息头 编辑HTTP信息头 添加断言 添加查看结果树 添加聚合报告 添加响应时间 添加TPS 批量运行命令: ...
- mariadb 长链接时间限制导致队列消费进程崩溃
项目是一个数据同步项目,线下Android客户端把本地sqllite数据提交到云端队列,php做守护进程消费队列,以同步数据.初测没有问题,可是时不时出现诡异的崩溃,因为设置了错误邮件报警,发现错误代 ...
- [SinGuLaRiTy] 树形存储结构阶段性测试
[SinGuLaRiTy-1011] Copyright (c) SinGuLaRiTy 2017. All Rights Reserved. G2019级信息奥赛专项训练 题目 程序名 时间 内存 ...
- 对象的创建过程(chapter5.7.3)
总结一下对象的创建过程,假设有一个名为Dog的类: 1. 即使没有显示地使用static关键字,构造器实际上也是静态的方法,因此,当首次创建类型为Dog的对象时(构造器可以看成静态方法),或者Dog类 ...
- POJ 2585 Window Pains 题解
链接:http://poj.org/problem?id=2585 题意: 某个人有一个屏幕大小为4*4的电脑,他很喜欢打开窗口,他肯定打开9个窗口,每个窗口大小2*2.并且每个窗口肯定在固定的位置上 ...
- POJ3592 Instantaneous Transference题解
题意: 给一个矩形,矩形中某些点有一定数量的矿石,有些点为传送点,有些点为障碍.你驾驶采矿车(ore-miner truck,我也不知道是什么),从左上角出发,采尽量多的矿石,矿石不可再生.不能往左边 ...
- mac下安装git,并将本地的项目上传到github
mac下安装git 安装过程: 1.下载Git installer http://git-scm.com/downloads 2.下载之后打开,双击.pkg安装 3.打开终端,使用git --vers ...
- 浩哥解析MyBatis源码(九)——Type类型模块之类型处理器注册器(TypeHandlerRegistry)
原创作品,可以转载,但是请标注出处地址:http://www.cnblogs.com/V1haoge/p/6709157.html 1.回顾 上一篇研究的是类型别名注册器TypeAliasRegist ...
- memcached分布式缓存
1.memcached分布式简介 memcached虽然称为“分布式”缓存服务器,但服务器端并没有“分布式”功能.Memcache集群主机不能够相互通信传输数据,它的“分布式”是基于客户端的程序逻辑算 ...