我有一个运行大约3个小时的python脚本。我想将它生成的某些数据打印到.csv文件中。
我在centos上运行脚本,如下所示:
python my_script.py > output.csv &
我也尝试过:
python my_script.py &> output.csv
什么都不会打印到output.csv,甚至在脚本开头也不会打印一些测试语句。
接下来我要尝试的是在脚本中打开文件-f = open('output.csv', 'a')
,然后使用f.write()
对其进行写入。同样,文件中什么也没有显示(尽管确实创建了)。
如何使用所需数据创建output.csv?它不是后台进程,但我希望它在后台运行时,它似乎正常工作。
我正在打印,就像这样:
print('hello, this is a test')
在另一个版本中,我有这样的东西:
f = open('output.csv', 'a')
f.write('hello, this is a test')
在两种情况下,我得到的结果完全相同。文件已创建,但实际上未写入任何文件。
感谢您的帮助。谢谢!
答案 0 :(得分:2)
尝试刷新标准缓冲区:
Python> = 3.3:
print('hello, this is a test', flush=True)
早期版本:
import sys
print('hello, this is a test')
sys.stdout.flush()