Остановите 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, как можно видеть в этом вопросе.

Другие вопросы по тегам