我使用NppExec/Notepad++编写Python脚本。如何在执行Python代码的每一行时更新控制台窗口?例如,以下计时器脚本:
#!usr/bin/env python
import time
import threading
class Timer(threading.Thread):
def __init__(self, seconds):
self.runTime = seconds
threading.Thread.__init__(self)
def run(self):
counter = self.runTime
for sec in range(self.runTime):
print counter
time.sleep(1.0)
counter -= 1
print "Done."
if __name__ == '__main__':
t = Timer(10)
t.start()当我在命令提示符窗口中运行它时,它每秒都会实时更新。但在NppExec控制台中,它只有在退出后才会更新。有没有一种方法可以让NppExec控制台像命令提示符一样运行并持续更新?
发布于 2012-05-01 02:49:39
所有需要做的就是调用python -u命令来运行脚本,即python -u timer.py而不是python timer.py
默认情况下,以无缓冲模式打印输出。对于更详细的程序中的自定义输出刷新,stdout定义必须为rewritten。
发布于 2012-03-13 04:10:42
不熟悉特定的控制台应用程序如何处理输出,但默认情况下stdout是缓冲的,这可能是这里的问题所在。有关禁用它的方法,请参阅this question。
https://stackoverflow.com/questions/9673983
复制相似问题