文件操作
补充储备
1.with语法支持一次性打开多个文件,需要用逗号隔开
eg:
with open(r'a.txt','r',encoding='utf8') as f1 , open(r'b.txt','r',encoding='utf8') as f2,open(r'c.txt','r',encoding='utf8') as f3:
pass
2.补全python语法(pass ...),但是不执行任何操作,在搭建项目框架时经常会用
3.通常情况下,英语单词的结尾如果跟上了able表示具备该单词描述的能力
eg:
readable 具备读取的能力
writeable 具备填写内容的能力
文件读写模式
控制文件读写的操作模式有三个: ‘r’ 模式(默认)、'w’模式(只写模式)、'a’模式(追加只写模式)
1.r模式 : 只读模式(默认的模式) >>>使用该模式打开的文件,只能读,不能写
1.1当文件路径不存在时,r模式打开文件会报错
eg:
with open(r'不存在的文件.txt','r',encoding='utf8') as f1:
pass # 报错
1.2当文件路径存在时,r模式会打开该文件等待读取内容
eg:
with open(r'存在的文件.txt','r',encoding='utf8') as f1:
print(f1.read()) >>> 打印的是'存在的文件.txt'的内容
f1.write('123') # 报错 not writable 在r模式下只能读,不能写
2.w模式 :只写模式 >>>使用该模式打开的文件只能写,不能做其他操作(读)
2.1当文件路径不存在时,w模式会自动创建该文件
eg:
with open(r'不存在的文件_w.txt','w',encoding='utf8') as f1:
pass
2.2当文件路径存在时,w模式会先清空该文件内容 之后等待填写新的内容
eg:
with open(r'存在的文件_w.txt','w',encoding='utf8') as f1:
f1.write(123) # 报错 填写的内容只能是字符串
f1.write('你好\n在干嘛')
3.a模式 :追加只写模式 >>>使用该模式打开文件默认是在末尾追加新的内容 不能做其他操作(读)
3.1当文件路径不存在时,a模式会自动创建该文件
eg:
with open(r'不存在的文件_a.txt','a',encoding='utf8') as f1:
pass
3.2当文件路径存在时,a模式不会先清空该文件内容,只在文件内容末尾等待填写新的内容
eg:
with open(r'存在的文件_a.txt','a',encoding='utf8') as f1