是否有一种方法可以同时打开文件进行读写?
作为一种变通方法,我打开文件进行写入,关闭文件,然后再次打开文件进行读取。但是有没有办法打开文件进行这两个读写呢?
r+是同时读写的规范模式。这与使用fopen()系统调用没有什么不同,因为file() / open()只是这个操作系统调用的一个微小包装。
r+
fopen()
file()
open()
我曾经尝试过这样的东西,它如预期的那样工作:
f = open("c:\\log.log", 'r+b') f.write("\x5F\x9D\x3E") f.read(100) f.close()
地点:
f.read(size) -要读取文件的内容,调用f.read(size) 读取一定数量的数据并以字符串形式返回
和:
f.r ewrite (string)将string的内容写入文件,返回 没有。< / p >
另外,如果你打开关于读取和写入文件的Python教程,你会发现:
'r+'打开文件进行读取和写入。 在Windows上,'b'附加到mode以二进制模式打开文件,因此 还有'rb', 'wb'和'r+b'等模式。
'r+'打开文件进行读取和写入。
在Windows上,'b'附加到mode以二进制模式打开文件,因此 还有'rb', 'wb'和'r+b'等模式。
下面是如何读取一个文件,然后写入它(覆盖任何现有的数据),而不关闭和重新打开:
with open(filename, "r+") as f: data = f.read() f.seek(0) f.write(output) f.truncate()
总结I/O行为:
上表的决策树:
.