Как отключить окно консоли при отладке кода python в Python Tools for Visual Studio (PTVS)?

в PTVS поведение по умолчанию для программы для печати в окне консоли Python и окне вывода отладки Visual Studio.

понимая, что он не сможет принимать пользовательский ввод, как мне подавить окно консоли Python?

2 ответов


Это было труднее понять, чем ожидалось, но, как обычно, просто, как только вы знаете.

быстрый ответ.
В обозревателе решений щелкните правой кнопкой мыши проект и выберите Свойства. На вкладке Общие установите флажок рядом с приложением Windows.

Windows Application Checkbox

затем сохраните и закройте окно свойств. Готово!


другие детали из обсуждения вопроса, опубликованного в 2012 году на Сайт PTVS codeplex.
оболочка Python появляется в дополнение к выходному окну IDE

типичный способ скрыть окно консоли Python-установить Свойство приложения Windows (в окне "свойства проекта"), который затем будет запущен pythonw.exe вместо python.исполняемый. Это только реально опция, если вы не предоставляете никаких входных данных во время работы программы - окно вывода в VS не является консолью и не поддерживает ввод в ваша программа. Кроме того, эта опция предназначена для каждого проекта, поэтому вам придется установить его для каждого проекта. (Это также, кажется, не работает в нашем последние сборки, так что мы исправим это как можно скорее...)

другой вариант-остановить печать вывода в Visual Studio и только используйте окно консоли. Если у вас проблемы с производительностью, это это скорее решит проблему. Для этого откройте Инструменты - >Параметры - >инструменты Python - >Дополнительно и снимите флажок " программа Tee вывод для отладки окна вывода". Вероятно, вы также захотите выбрать "Дождитесь ввода, когда процесс завершится нормально", пока вы здесь. Сейчас все выходные данные будут отправлены в консоль Python (вы можете щелкнуть правой кнопкой мыши заголовок и выберите Свойства, чтобы сделать его больше), который будет быстрее.


используйте интерактивное окно Python (CTRL-ALT-F8 или меню отладки). У вас будет вывод кода в интерактивной оболочке python (где вы, очевидно, можете взаимодействовать). Терминал win больше не появится.