r+,w+,a+,表示该模式可读可写,但又各有不同,具体如下:
(1)、r+(表示可读可写)
代码如下:
fp = open("test1.txt",mode="r+",encoding="utf-8") res = fp.read() fp.write("789") fp.close() print(res)
注意点:r,r+ 模式下,
1、文件必须存在才能创建文件IO对象(fp)
2、光标会停止在读写终止的位置
(2)、w+(可读可写)
代码如下:
fp = open("test2.txt",mode="w+",encoding="utf-8") fp.write("梦想起航") fp.seek(0) res = fp.read() fp.close() print(res)
注意点:w,w+ 模式下,
1、文件不存在时可自动创建
2、光标会停止在读写终止的位置(同r,r+)
3、该模式下,生成文件IO对象(fp)时已默认清空文件内容(慎用)
(3)、a+(可读可写)(写入内容时强制把光标移动到最后)
fp = open("test3.txt",mode="a+",encoding="utf-8") fp.seek(0) fp.write("789") fp.seek(0) res = fp.read() fp.close() print(res)
注意点:a,a+ 模式下,
1、文件不存在时可自动创建
2、写入时光标会被强制放到文件内容末尾(区别于r,w)(即使使用seek移动时也不行)
3、该模式下,生成文件IO对象(fp)时已默认清空文件内容(慎用)