Python文件追加错误

时间:2013-05-03 14:08:41

标签: python

这段代码对我来说很好。最后添加数据。

def writeFile(dataFile, nameFile):
    fob = open(nameFile,'a+')
    fob.write("%s\n"%dataFile)
    fob.close()

但问题是当我关闭程序然后再次运行时,我发现以前的所有数据都丢失了。进程从头开始写入,文件中没有数据。

但是在运行期间它完全在文件末尾添加一行。

我无法理解这个问题。请一些帮助。

注意:我正在使用带有python 2.6的Ubuntu-10.04

1 个答案:

答案 0 :(得分:1)

您在此处发布的代码没有任何问题......我倾向于同意其他评论,即该文件可能会被代码中的其他地方覆盖。

我能想到的唯一一个明确测试它的建议(如果你的用例可以容忍它)是在函数末尾抛出一个exit()语句,然后在外部打开文件(也就是在gedit中)看看最后一次改变是否花了。

除了退出之外,您可以在终端中运行该程序,并在此函数末尾包含对pdb的调用,这将在不杀死程序的情况下中断该程序:

import pdb; pdb.set_trace()

然后,您必须在每次运行时点击c继续该程序。

如果检出,请搜索此文件可能会被打开的其他地方。