4

我正在尝试编写经过三个大迭代以及每次打开和关闭输出文件时正在完成的操作的输出。迭代后计数器会被重置,类似这样的事情,我是一个巨大的新手,并且很难用我编写的伪劣代码来解决这个问题。因此,即使速度较慢,我也想改变它的输出方式。

目前对于输出,它只是重写第一行,所以我只有最后一次运行程序的输出。(tau,输出是代码中上述迭代中给定值的变量)

with open(fileName + '.autocorrelate', "w") as outfile:
    outfile.writelines('{0}     {1}{2}'.format(tau, output, '\n'))

我想知道是否有任何快速方法可以让 python 在打开文件并在那里写入新行时检查第一个空行?

4

3 回答 3

9

使用“a”而不是“w”打开将写入文件末尾。这就是不覆盖的方法。

于 2012-06-01T13:27:11.737 回答
1

如果您以附加模式打开文件:"a"而不是“ w”,您将能够在文件末尾写一个新行。

于 2012-06-01T13:27:20.953 回答
0

你会做类似的事情来保持对文件中每个空行的引用(行号)

# Get file contents
fd = open(file)
contents = fd.readlines()
fd.close()

empty_line = []
i = 0

# find empty line
for line in contents:
    if line == "":
       empty_line.append(i)
    i+=1
于 2012-06-01T13:46:18.453 回答