文件打开模式 | 描述 |
---|---|
r | 以只读模式打开文件,并将文件指针指向文件头;如果文件不存在会报错 |
w | 以只写模式打开文件,并将文件指针指向文件头;如果文件存在则将其内容清空,如果文件不存在则创建 |
a | 以只追加可写模式打开文件,并将文件指针指向文件尾部;如果文件不存在则创建 |
r+ | 在r的基础上增加了可写功能 |
w+ | 在w的基础上增加了可读功能 |
a+ | 在a的基础上增加了可读功能 |
b | 读写二进制文件(默认是t,表示文本),需要与上面几种模式搭配使用,如ab,wb, ab, ab+(POSIX系统,包括Linux都会忽略该字符) |
1.r+和a+的区别:
with open(‘pi1.txt‘,‘w+‘, encoding=‘utf-8‘) as f: f.write(‘---test---‘) with open(‘pi1.txt‘,‘r+‘, encoding=‘utf-8‘) as f1: f1.write(‘456‘) with open(‘pi1.txt‘,‘a+‘, encoding=‘utf-8‘) as f2: f2.write(‘789‘) 输出结果: 456test---789
说明r+进行了覆盖写
2.a:附加写方式打开,不可读;a+: 附加读写方式打开(文件里有内容,却读出空字符)
with open(‘p2.txt‘,‘a+‘,encoding=‘utf-8‘) as f: f.write(‘123‘) #f.seek(0) print(f.read()) 运行结果:空 把f.seek(0),光标移动到开头,就可以读取出来
原文:https://www.cnblogs.com/qiupiao/p/14595638.html