Day 8 : Python 文档操作
Python 文件的操作方法:
打开文件
 f = open('test','r',encoding='utf-8')
 #f :文件句柄
 #test:文件绝对路径
 #r:打开方式
 #encoding 打开文件的编码模式
 with open('test',encoding='utf-8') as f:
     pass
 #如果不输入填写的方式默认是已只读的方式打开
 #这种打开方式,文件操作完了之后,系统自动执行close 关闭文件
文本的打开模式:
r 以只读方式打开
w 以写方式打开 (如果文件不存在,就创建文件,如果文件存在,清空文件,再写入)
a 以追加模式打开 (从 EOF 开始, 必要时创建新文件)
r+ 以读写模式打开
w+ 以读写模式打开
a+ 以读写模式打开
rb 以二进制读模式打开
wb 以二进制写模式打开
ab 以二进制追加模式打开
rb+ 以二进制读写模式打开
wb+ 以二进制读写模式打开
ab+ 以二进制读写模式打开 (
x 如果文件存在报错,不存在则创建 文件的操作方法
read :读 如果打开方式是r read(2)就是读取2个字符,如果是r+b打开模式,则参数代表字节
close:关闭文件
seek:定位光标,定位光标后,读取数据或者写入数据,都在光标后操作(seek的参数是以字节单位为准)
readline:读取一行
write:写
flush:刷新至硬盘,写文件默认都是写至内存,如果执行这个命令,相当于保存了。
tell:读取当前光标位置
 f = open('test','r+',encoding='utf-8')
 # with open('test',encoding='utf-8') as f:
 f.read(30)
 #read 方法 默认参数是-1 也就是读取至文件末尾
 #read(20)意思是,读取20个字节
 # f.readline()
 #读取一行
 #参数也是字节,如果输入参数,则和read方法的效果类似
 # f.write('xieru\n')
 #如果想换行,可以在文件后面加入\n
 f.seek(20)
 #seek 定位光标。定位完成之后,再写入,会覆盖后置文字
 f.write('wo shi sunjinchao')
 print(f.tell())
15 f.close 记得关闭文件
##当用户有读操作后,写方法就可以在文件后面追加
例子:把每行的文档中,加入一个age。
修改文件(修改文件,不要修改当前文件,只能创建一个新文件,然后把久文件删除。把新文件重命名):必要时先备份
import os #导入os模块,文件操作
file_one = open('flie',encoding='utf-8')
file_two = open('flie_bak','w',encoding='utf- 8 ')
#txt文件
# 1、sunjinchao,25
# 2、xianfangdi,24
# 3、sunjinyao,3
for line in file_one:
print(line)
user_list = line.split(',')#字符串方法用逗号分割
print(user_list)
user_list[0] = user_list[0] + ',age'
print(user_list)
#user_list[0].用split方法后,一个段字符串为[0]
user_str = ','.join(user_list)#拼接字符串
print(user_str)
file_two.write(user_str)#把新的内容写入至新文件
file_one.close()
file_two.close()#关闭文件,不然报错
os.remove('test')#删除文件
os.rename('file_bak','file')#重命名 '''
输出的内容
第1个print :1、sunjinchao,26
第2个print:['1、sunjinchao', '26\n']
第3个print:['1、sunjinchao,age', '26\n']
第4个print:1、sunjinchao,age,26
'''
Day 8 : Python 文档操作的更多相关文章
- 吴裕雄--天生自然python学习笔记:python文档操作批量替换 Word 文件中的文字
		我们经常会遇到在不同的 Word 文件中的需要做相同的文字替换,若是一个一个 文件操作,会花费大量时间 . 本节案例可以找出指定目录中的所有 Word 文件(包含 子目录),并对每一个文件进行指定的文 ... 
- Python文档操作
		1.打开和关闭文件 open('C:\Users\Second One\Desktop\a.txt')文件路径必须完整路径且为字符串格式 有三种方式: open('C:\\Users\\Second ... 
- 吴裕雄--天生自然python学习笔记:python文档操作自动生成菜单 Word 文件
		许多学校营养午餐的菜单是由教师来轮流制作 ,这是一个 比较烦锁的工作,如 果能自动用教师最熟悉的 Word 文件来生成一个菜单文件,使教师对生成的菜单稍作 修改即可使用,那将是一个不错的主意. 案例要 ... 
- 吴裕雄--天生自然python学习笔记:python文档操作自动查找替换 Word 文件中的指定文字
		Win32com 组件提供了自动替换 Word 文件中指定文字 的功能 .在使用“查找” 功能替换文字之前,可先清除源文字及目标文字的格式,以免影响替换效果,语法为 : 替换 Word 文件特定文字的 ... 
- 吴裕雄--天生自然python学习笔记:python文档操作插入图片
		向 Word 文件中插入图片 向 Word 文件插入图片的语法为: 例如,在 cl ip graph.docx 文件的第 4 段插入 ce ll.jpg 图片,井将图片文件保存于 Word 文件内: ... 
- 吴裕雄--天生自然python学习笔记:python文档操作表格处理
		表格也是 Word 文件中常用的对象,下面讲解 Win32com 中常用的表格操作命令 . 新建表格的语法为: 在 Word 文件中新建一个表格并插入单元格内容 在 Word 文件中新建一个 3 行 ... 
- python 全栈开发,Day54(jQuery的属性操作,使用jQuery操作input的value值,jQuery的文档操作)
		昨日内容回顾 jQuery 宗旨:write less do more 就是js的库,它是javascript的基础上封装的一个框架 在前端中,一个js文件就是一个模块 一.用法: 1.引入包 2.入 ... 
- python全栈开发day48-jqurey自定义动画,jQuery属性操作,jQuery的文档操作,jQuery中的ajax
		一.昨日内容回顾 1.jQuery初识 1).使用jQuery而非JS的六大理由 2).jQuery对象和js对象转换 3).jQuery的两大特点 4).jQuery的入口函数三大写法 5).jQu ... 
- 基于 Python 官方 GitHub 构建 Python 文档
		最近在学 Python,所以总是在看 Python 的官方文档, https://docs.python.org/2/ 因为祖传基因的影响,我总是喜欢把这些文档保存到本地,不过 Python 的文档实 ... 
随机推荐
- [转]WPF中的导航框架
			有的时候,我们需要一个支持页面跳转的UI,例如文件浏览器,开始向导等.对于这样的界面,简单的可以使用ContentControl + ContentTemplateSelector的方式来实现,但是有 ... 
- HttpUrlConnection类基本使用
			这个类用来模拟浏览器向服务器发送请求和接收响应 注意: HttpUrlConnection对象简称huc对象 1)获取huc对象向url构造中传递url字符串,并调用openconnection方法即 ... 
- 7.12模拟T2(套路容斥+多项式求逆)
			Description: \(n<=10,max(w)<=1e6\) 题解: 考虑暴力,相当于走多维格子图,不能走有些点. 套路就是设\(f[i]\)表示第一次走到i的方案数 \(f[i] ... 
- hive的数据压缩
			hive的数据压缩 在实际工作当中,hive当中处理的数据,一般都需要经过压缩,前期我们在学习hadoop的时候,已经配置过hadoop的压缩,我们这里的hive也是一样的可以使用压缩来节省我们的MR ... 
- NX二次开发-UFUN获得图纸页数量UF_DRAW_ask_num_drawings
			#include <uf.h> #include <uf_draw.h> #include <uf_ui.h> UF_initialize(); //获得有多少张图 ... 
- NX二次开发-UFUN输入表达式名称,获取它的名称和值UF_MODL_ask_exp
			NX9+VS2012 #include <uf.h> #include <uf_modl.h> UF_initialize(); //创建一个新的表达式,有TAG tag_t ... 
- Flex birdeye笔记
			1.将官网示例demo运行起来 新建Flex项目,直接将官网src下的demo拷贝到新建的项目的src下 .将官网example-binaries目录下的文件拷贝到新建项目的bin-debug下即可 ... 
- LOJ #113. 最大异或和 (线性基)
			题目链接:#113. 最大异或和 题目描述 这是一道模板题. 给由 \(n\) 个数组成的一个可重集 \(S\),每次给定一个数 \(k\),求一个集合 \(T \subseteq S\),使得集合 ... 
- AtCoder ABC 132E Hopscotch Addict
			题目链接:https://atcoder.jp/contests/abc132/tasks/abc132_e 题目大意 给定一张 N 个点 M 条边无自环无重边的一张有向图,求从起点 S 能否三步三步 ... 
- Codeforces 1154B  Make Them Equal
			题目链接:http://codeforces.com/problemset/problem/1154/B 题意:给定数组,可以给任意的的元素加上D 或者 减去D,如果能 使数组元素都相等,输出最小的D ... 
