2012-06-10 181 views
0

我打开了Python解释器,并试图写入一个文件,我在同一时间阅读:为什么我不能写入用python打开的文件?

file = open("foo.txt") 
lines = file.readlines() 
for i in range(0, 3): 
    file.write(lines[0]) 

然而,蟒蛇发布了注意我有一个坏的文件处理程序,当我试图执行file.write(lines[0])错误。为什么我不能将文件的第一行写入文件本身?

+0

'file = open(“foo.txt”,“r +”);'它应该可以工作。 – Mizuho

回答

7

为了写入一个文件,有必要在读打开文件/写模式

file = open("foo.txt", "r+")  # reading and writing to file 

file = open("foo.txt", "w") # writing only to file 

如果你打开一个文件,不要指定一个模式,默认情况下它的模式为,默认为模式,所以你打开了你的文件来“读取”,但是试图“写入”它。

请参阅Reading and Writing Files Python文档以获取更多信息。 @Mizuho还建议这个页面关于Python File IO,它有各种可用模式的非常好的总结。

+0

只是想添加一个地方来轻松获取模式:http://www.tutorialspoint.com/python/python_files_io.htm。 – Mizuho

+0

对不起,只是编辑它,因为我忘了如何做SO上的URL。 – Mizuho

+0

继续;这会让任何后来看到这个问题的人更容易:D。 – Mizuho

相关问题