Остановите NppExec от перехвата вывода консоли до завершения программы
Я использую плагин NppExec для Notepad ++ для выполнения скриптов Python из Notepad ++. Я заметил, что вывод консоли Python производится с print()
оператор не появляется в консоли Notepad ++ до тех пор, пока не завершится выполнение всего скрипта. Есть ли способ сделать так, чтобы операторы печати появлялись в реальном времени?
Я использую Notepad++ v.5.9.8 и NppExec v0.4.1.
1 ответ
Окно консоли NppExec запускается как дочерний процесс, что означает, что обновление отображения окна консоли, а также запуск основной программы выполняются в одном потоке. По умолчанию выходные данные оператора печати Python буферизуются и выполняются в том же потоке, что и родительский скрипт, поэтому выходные данные должны отображаться в небуферизованном режиме. Это сделано с -u
флаг.
использование python -u script.py
вместо обычного python script.py
, как можно видеть в этом вопросе.