我有一个奇怪的观察。 我有一个巨大的文本文件(它就像450 MB的文本)
我通过类似的东西读了它中的行数。
for i,line in enumerate(f):
count += 1
print count
在每次比赛中,我得到了不同的结果? 它不是非常不同。 只是每次我运行它...它最接近最后一个。 例如,如果在第一个例子中它显示8151,在下一次运行中它显示8162并且在下一次运行中它应该显示8197 ?? 任何线索? 我有什么东西可以忽略。
答案 0 :(得分:3)
您可能有另一个进程对写入该文件的文件具有开放写入句柄。您可以使用lsof
检查其他进程对该文件的打开文件句柄。
lsof | grep <name of file>