Notepad ++のNppExecプラグインを使用してPythonスクリプトをNotepad ++内から実行しています。Pythonコンソール出力はprint()
ステートメントで生成されますスクリプト全体の実行が完了するまで、Notepad ++コンソールに表示されません。printステートメントをリアルタイムで表示する方法はありますか?
Notepad ++ v.5.9.8とNppExecv0.4.1を使用しています。
NppExecのコンソールウィンドウは子プロセスとして開始されます。つまり、コンソールウィンドウの表示の更新とメインプログラムの実行は、シングルスレッド。デフォルトでは、Python printステートメントの出力はバッファリングされ、親スクリプトと同じスレッドで実行されるため、出力はバッファリングされていないモードで表示される必要があります。これは、-u
フラグを使用して実行されます。
これに見られるように、従来のpython -u script.py
の代わりにpython script.py
を使用してください SO質問 。