python文件读写模式(r+, w+, a+, rb+, rw+, ra+)
发布于2021-12-07 15:36:46阅读 2.3K0
增加+:表示把当前文件以读写模式打开(r+, w+, a+, rb+, rw+, ra+),基本特性和不适用+号之前一致,操作结果有些许区别。带上+号之后只要open一个文件之后就可读可写。
f = open('a.txt', 'r+', encoding='utf-8') # 读取文件的时候使用utf-8编码
content = f.read()
print(content)
f.write('123')# 使用r+模式可以直接读和写,先读后写的话:写入的时候从文本最后面开始,直接追加
# 如果是先写后读,则从文本开头写入,会覆盖对应个数的字符
f.close()
复制
这里要注意读的时候文件光标移动,写的时候覆盖等问题,大家用代码自己试一下,这里文字很难描述。
fd = open("a.txt", 'w+')
fd.write('123')
fd = open("a.txt", 'r+') # 没有读,直接写会覆盖上面的123
fd.write('a')
fd = open("a.txt", 'a+')
fd.write('a')
复制
- w:以写方式打开,
- a:以追加模式打开 (从 EOF 开始, 必要时创建新文件)
- r+:以读写模式打开
- w+:以读写模式打开 (参见 w )
- a+:以读写模式打开 (参见 a )
- rb:以二进制读模式打开
- wb:以二进制写模式打开 (参见 w )
- ab:以二进制追加模式打开 (参见 a )
- rb+:以二进制读写模式打开 (参见 r+ )
- wb+:以二进制读写模式打开 (参见 w+ )
- ab+:以二进制读写模式打开 (参见 a+ )fp.read([size])