質問

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コンソールをコマンドプロンプトとして動作させて継続的に更新する方法はありますか?

役に立ちましたか?

解決 2

実行する必要があるすべては、スクリプトを実行するためのpython -uコマンド、すなわちpython -u timer.py

の代わりにpython timer.pyを呼び出します。

デフォルトでバッファルされていないモードで出力されます。カスタム出力フラッシュのためのより詳細なプログラムでは、stdout定義は書き換え

他のヒント

その特定のコンソールアプリケーションが出力を処理する方法に慣れていないが、stdoutはデフォルトでバッファされています。これはおそらくここでの問題です。この質問を無効にする方法。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top