如何在python中修改文件

来源:luqidong 发布时间:2014-04-03 20:18:26 点击数:
其实目前没有一个中间件是修改文件。而无需重新编写的。正如以前的api已经表明,可以追加到文件或用seek覆盖它的一部分,但如果你想在开始或中间添加的东西,你就必须重写它。 
这是一个操作系统的东西,不是一个Python的事情。这是在所有的语言一样。 
我通常做的是从文件中读取,进行修改并写入到一个名为myfile.txt.tmp或类似的东西,新的文件。这是比读取整个文件到内存中更好,因为该文件可能太大了点。一旦临时文件完成后,我将其重命名相同的原始文件。 
这是一个良好的,安全的方式来做到这一点,因为如果该文件写入崩溃或中止任何原因,你仍然有你不变的原始文件。
下面是一个例子:
取决于你想要做什么。追加你可以用a打开它:
 with open("foo.txt", "a") as f:
     f.write("new line\n")

如果你想preprend你拥有的东西从文件中读取:

with open("foo.txt", "r+") as f:

     old = f.read() # read everything in the file
     f.seek(0) # rewind
     f.write("new line\n" + old) # write the new line before

本文由免费oa系统78oa原创,转载请注明出处。