为了帮助我的数学研究,我编写了一个 Python2 程序并在 bash 中将其调用为
python myprog.py > myoutput.txt
首先,我对一小组输入值运行它,并在不到一秒的时间内得到输出。
现在,对于更大的输入数据(因此输出应包含先前运行的输出作为子集),它已经运行了几个小时。在另一个终端窗口中,我发现“myoutput.txt”是在调用时创建的,但为空。是否有一个存储输出的临时位置可供我查看?
我的程序有一个 for 循环,并且应该为该循环的每次迭代输出一行。当范围为 1 到 35 时,我立即得到 35 行输出。当我将范围增加到 1 到 175 时,几乎一天过去了,没有输出。有人可以帮忙吗?
答案1
不好的做法 - 重定向只会在程序末尾执行写入。
使用日志记录模块。https://docs.python.org/2/howto/logging.html
- 编辑:写入不是在最后完成的,而是在缓冲区耗尽时完成的。谢谢 barmar