我打开了python解释器并尝试写入我同时正在阅读的文件:
file = open("foo.txt")
lines = file.readlines()
for i in range(0, 3):
file.write(lines[0])
然而,python发出错误,指出我在尝试执行file.write(lines[0])
时遇到了错误的文件处理程序。为什么我不能将文件的第一行写入文件本身?
答案 0 :(得分:7)
为了写入文件,必须以写或读/写模式打开文件
file = open("foo.txt", "r+") # reading and writing to file
或
file = open("foo.txt", "w") # writing only to file
如果你打开一个文件并且没有指定一个模式,默认情况下它处于读取模式,所以你打开了文件“read”,但是试图“写”到它
有关详细信息,请参阅Reading and Writing Files Python文档。 @Mizuho还建议了这个关于Python File IO的页面,它对可用的各种模式有很好的总结。