Я использую плагин Notepad++ NppExec для выполнения скриптов 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
, как можно увидеть в этомТАКОЙ вопрос.