Я делаю приложение на Python из Windows. Когда я запускаю его в консоли, он останавливается, показывает ошибку и закрывается. Я не вижу ошибки, потому что она слишком быстрая, и я не могу ее прочитать. Я редактирую код с IDLE (программа, которая пришла с python, когда я его установил), и когда я запускаю его с оболочкой python, ошибок нет. Я бы запустил его из IDLE, но когда я использую консоль, он имеет больше возможностей.
Я не знаю, почему это происходит. Мне нужна ваша помощь.
user1586464 09 авг ’12 в 03:52 2012-08-09 03:52
2012-08-09 03:52
3 ответа
Запустите вашу программу из командной строки Windows. Это не будет автоматически закрываться, когда программа заканчивается.
Если вы запустите свою программу, дважды щелкнув .py значок файла, затем Windows закроет окно, когда ваша программа завершит работу (независимо от того, была она успешной или нет).
user893 09 авг ’12 в 03:55 2012-08-09 03:55
2012-08-09 03:55
Запустите программу с уже открытого терминала. Откройте командную строку и введите:
Как сделать, чтобы окно черепашки turtle не закрывалось после выполнения программы
python myscript.py
Чтобы это работало, вам нужен исполняемый файл python на вашем пути. Просто проверьте, как редактировать переменные окружения в Windows, и добавьте C:PYTHON26 (или любой каталог, в который вы установили python). Когда программа завершится, она вернет вас к приглашению CMD Windows вместо закрытия окна. код для ожидания в конце вашего скрипта. Добавление.
raw_input()
. в конце скрипта заставляет его ждать клавишу ВВОД. Этот метод раздражает, потому что вы должны изменить скрипт и не забыть удалить его, когда закончите.
user1222057 09 авг ’12 в 03:56 2012-08-09 03:56
2012-08-09 03:56
Создайте текстовый файл в каталоге программы, т.е. где бы ни находился ваш скрипт. Изменить расширение на .bat например text.bat , Затем отредактируйте текстовый файл и напишите:
python main.exe pause
Теперь вы можете запустить программу без ввода в командной консоли, дважды щелкнув файл bat, и окно консоли не закроется.
Источник: stackru.com
Как остановить немедленное закрытие Python при выполнении в Microsoft Windows
Я только что поступил в колледж, и мы собираемся использовать Python. Мы действительно ничего не сделали, поэтому я скачал программу и выполнил несколько команд печати, вот и все. Когда я запускаю свой файл .py (a print команда) он сразу же закрывается после появления.
Я понимаю, почему он это делает — ему дан вывод, поэтому он сделал то, что должен сделать, — но я также понимаю, что вы можете предотвратить это. Я просмотрел этот веб-сайт, и ни одно из решений этого вопроса не сработало, либо это, либо я их не понял. Есть ли простая команда, которую я могу ввести в свой редактор IDLE, которая приостановит работу программы или что-то в этом роде? я пытался input(«prompt: «) как было предложено кем-то, и это не имело значения. Если для этого нет команды, есть ли способ изменить настройки компьютера, чтобы программы не закрывались автоматически?
Псевдо-вирус на python
задан 11 сен ’12, 18:09
вы работаете на машине Windows? Если да, дважды щелкаете файл .py? Попробуйте открыть командную строку в папке, в которой находится ваш .py, а затем запустите python. your_file.py тогда ваш редактор отобразит вывод, но после этого останется открытым. — Ctrlspc
если ввод не работает, у вас есть ошибка, которая убивает файл до того, как вы туда доберетесь . запустите его из «cmd» вместо того, чтобы щелкнуть его, как сказал Ctrlspc 🙂 — Joran Beasley
извините, только что заметил опечатку и не могу редактировать свой комментарий сейчас, вы должны запустить python your_file.py (игнорируйте точку после python в моем последнем комментарии.) — Ctrlspc
Приятно поступить в колледж и использовать Python! Когда я поступил в колледж в 99 году, основными языками были Cobol и Java. отстой :(- Brandon Poole
перетащите файл в окно cmd и нажмите Enter. Окна cmd останутся открытыми (даже если они содержат ошибку. input() работает только в том случае, если вы не вызываете ошибку перед этой строкой) — JinSnow
19 ответы
В Python 3 добавьте в конец кода следующее:
input(‘Press ENTER to exit’)
Это заставит программу ждать ввода пользователя, а нажатие ENTER приведет к завершению программы. Вы можете дважды щелкнуть по своему script.py файл в Windows удобно таким образом.
ответ дан 04 апр.
This will cause the program to wait for user input за исключением случаев, когда вы вызываете ошибку в строке перед вашим input() — ДжинСноу
В python 2.7.x используйте raw_input() вместо input(). — G4mo
Единственное, что сработало для меня — аргумент командной строки. Просто поместите весь свой код Python в файл .py, а затем выполните следующую команду:
python -i script.py
Это означает, что если вы установите переменную -i и запустите свой модуль, то python не выйдет из SystemExit. Подробнее читайте в этом ссылке.
ответ дан 23 мая ’17, 13:05
Наблюдения и советы этой статьи мы подготовили на основании опыта команды -i options говорит переключиться в интерактивный режим (с >>> подсказка) после завершения программы. Затем можно выйти или взаимодействовать с глокальными объектами. Запуск кода из редактора IDLE имеет тот же эффект. — Терри Ян Риди
Проголосовал за, но это будет решением только в том случае, если кто-то может объяснить, как включить -i режим автоматически, когда пользователь дважды щелкает скрипт Python. Это вариант использования вопроса; при использовании командной строки окно все равно не закрывается. — Алексис
Откройте cmd (командную строку) и запустите оттуда команды Python. (в Windows запустите или выполните поиск и введите cmd) Это должно выглядеть так:
python yourprogram.py
Это выполнит ваш код в cmd, и он останется открытым. Однако для использования команды python необходимо правильно установить Python, чтобы cmd распознал его как команду. Проверьте правильную установку и регистрацию переменных для вашей ОС, если этого не произошло
Создан 11 сен.
Я сделал, как вы сказали, и он просто говорит: «’python’ не распознается как внутренняя или внешняя команда, исполняемая программа или пакетный файл». — Кирбтре
Вы не сделали, как указано, потому что вы не зарегистрировали глобальные переменные, как это сделать, описано здесь docs.python.org/using/windows.html Особенно посмотри на 3.3.1 — родлинг
Какая? Да, я сделал, как указано. Если он что-то упустил, а я следую инструкциям, я не «не делаю» того, что мне сказали делать. Я нашел переменные среды, но не знаю, что мне теперь с ними делать, поскольку эта ссылка, насколько я понимаю, не говорит вам, что делать. Спасибо за больше ответов кстати 🙂 — Кирбтре
ты на винде? вам, возможно, придется установить переменную среды пути в папку, в которой есть python.exe, например, если python.exe находится в c:python27, вы можете добавить ;c:python27 в конец строки пути. — Ctrlspc
Да, я на окнах. Я не понимаю, как выполнить ваши инструкции Ctrlspc, потому что, когда я набираю это в cmd, возникает ошибка, потому что в папке «Program Files (x86)» есть пробел — Кирбтре
input(‘Press ENTER to exit’)
в конце, чтобы он остановился.
Создан 14 сен.
Запустите команду с помощью командной строки Windows из основного источника библиотеки Python. Пример.
C:Python27python.exe directoryToFileyourprogram.py
Создан 11 сен.
или просто перетащите свой .py в окна cmd (и нажмите ввод) — ДжинСноу
Если вы просто хотите отсрочку
from time import * sleep(20)
Создан 13 июля ’14, 22:07
Я знаю простой ответ! Откройте cmd, введите: cd C:directory your file is in и затем введите python your progam.py
Создан 29 янв.
Уже объяснил в Ответ JMB2K. — Эрик Айя
В зависимости от того, для чего я его использую, или если я делаю что-то, что будут использовать другие, я обычно просто input(«Do eighteen backflips to continue») если это только для меня, если другие будут использовать, я просто создаю пакетный файл и приостанавливаю его после
cd ‘/file/path/here’ python yourfile.py pause
Я использую вышеизложенное, если файлы будут переименованы, перемещены, скопированы и т. д., и мой cmd должен находиться в определенной папке, чтобы вещи попадали туда, куда я хочу, в противном случае — просто
python ‘/path/to/file/yourfile.py’ pause
Создан 25 сен.
В Python 2.7 добавление этого в конец моего файла py ( if __name__ == ‘__main__’: ) работает:
closeInput = raw_input(«Press ENTER to exit») print «Closing. »
Создан 14 ноя.
Причина, по которой он закрывается, заключается в том, что программа больше не работает, просто добавьте любой цикл или ввод, чтобы исправить это (или вы можете просто запустить его в режиме ожидания).
Создан 26 июля ’18, 03:07
Ну, у меня есть аналогичная проблема, она решается путем добавления переменной среды. Добавить системные переменные в окно Имя : PYTHONPATH Значение : C:Python27; Ваш путь Python.
ответ дан 07 дек ’16, 12:12
- используя сон (_sometime)
from time import * sleep(10)
- используя подсказку (обратите внимание, что я использую python 2.7)
exit_now = raw_input(«Do you like to exit now (Y)es (N)o ? «)’
if exit_now.lower() = ‘n’
//more processing here
В качестве альтернативы вы также можете использовать гибрид этих двух методов, где вы можете запрашивать сообщение и использовать сон (иногда), чтобы отложить закрытие окна. твой выбор.
обратите внимание, что приведенное выше — это всего лишь идеи, и если вы хотите использовать что-либо из них на практике, вам, возможно, придется немного подумать о логике вашего приложения.
Я не мог найти нигде в Интернете настоящего решения, не относящегося к сценарию, двойной щелчок и окно не закрывается. Думаю, мне лень перетаскивать или печатать, когда мне это не нужно, поэтому после некоторых экспериментов я нашел решение.
Основная идея состоит в том, чтобы повторно связать файлы .py, чтобы они запускали отдельный начальный сценарий перед запуском предполагаемого сценария. Исходный сценарий запускает новое окно командной строки с параметром /k, который оставляет командную строку открытой после завершения и запускает предполагаемый сценарий в новом окне.
Возможно, есть веские причины не делать этого, те, у кого больше знаний, прокомментируйте, если это так, но я полагаю, что если я столкнусь с чем-либо, при необходимости легко вернуться обратно. Одним из возможных нежелательных побочных эффектов является перетаскивание или ввод и запуск из командной строки, теперь открывается вторая командная строка, а не запуск в командной строке, которую вы перетащили или ввели.
Теперь для реализации я называю исходный скрипт Python python_cmd_k.pyw. Я использую Python 3.7. Требуемый код может отличаться для других версий. Измените путь C:Python37python.exe на место установки python. Свяжите файлы .pyw с pythonw.exe (не python.exe) через Windows, если они еще не установлены.
import subprocess import sys #Run a python script in a new command prompt that does not close command = ‘start cmd /k C:Python37python.exe «‘ + sys.argv[1] + ‘»‘ subprocess.run(command, shell=True)
Это запускается каждый раз, когда вы дважды щелкаете любой сценарий .py и запускаете новую командную строку для запуска сценария, который вы дважды щелкнули. Запуск через pythonw.exe подавляет окно командной строки при запуске этого исходного сценария. В противном случае, если вы запустите его через python.exe, появится раздражающее мигание командной строки в результате того, что первое окно каждый раз кратко отображается. Предполагаемый сценарий отображается, потому что код в исходном сценарии выше запускает предполагаемый сценарий с помощью python.exe.
Теперь свяжите файлы .py с python.exe (не pythonw.exe) через Windows, если они еще не установлены, и отредактируйте запись реестра для этой ассоциации (Отказ от ответственности: всегда делайте резервную копию реестра перед его редактированием, если вы не уверены в том, что делаете ). Я не знаю, есть ли в реестре разные пути для ассоциации файлов для разных версий Windows, но у меня это по адресу:
HKEY_CURRENT_USERSoftwareClassesApplicationspython.exeshellopencommand
Измените данные на путь pythonw.exe (не python.exe) и добавьте путь к приведенному выше сценарию ptyhon и «%1» в качестве аргументов («%1» передает полный путь к файлу с двойным щелчком). Например, если pythonw.exe и python_cmd_k.pyw находятся в папке C:Python37, тогда:
«C:Python37pythonw.exe» «C:Python37python_cmd_k.pyw» «%1»
Нет необходимости помещать python_cmd_k.pyw в тот же каталог, что и pythonw.exe, если вы указали правильный путь для обоих. Вы можете поместить их в файлы .reg для простого переключения между использованием сценария и поведением по умолчанию. При необходимости измените пути в приведенных ниже примерах (местоположение в реестре, ваша установка python, место, где вы поместили свой скрипт python_cmd_k.pyw).
С помощью ptyhon_cmd_k.pyw (при необходимости измените пути):
Версия по умолчанию (при необходимости измените пути):
ответ дан 08 мар ’19, в 07:03
Источник: stackovergo.com
Как сделать чтобы консоль не закрывалась python
Как остановить командную строку от закрытия в Python?
Поскольку я искал эту проблему в Интернете и узнал, что вам нужно положить некоторую фиктивную строку ввода в конец, чтобы остановить закрытие командной строки, но все еще сталкивается с проблемой. pls Help
Я использую python 3.3
2 ответа
В окнах это консоль CMD, которая закрывается, потому что процесс Python существует в конце.
Чтобы предотвратить это, сначала откройте консоль, затем используйте командную строку для запуска script. Сделайте это, щелкнув правой кнопкой мыши по папке, содержащей script, выберите Open console here и введите python scriptname.py в консоли.
Альтернатива, как вы выяснили, отложить окончание script, добавив в конце вызов input() . Это позволяет пользователю script выбирать, когда заканчивается script, и консоль закрывается.
Как остановить командную строку от закрытия в Python?
Потому что я искал эту проблему в интернете и узнал, что в конце нужно поместить фиктивную строку ввода, чтобы не закрывать командную строку, но я все еще сталкиваюсь с проблемой.
Я использую python 3.3
3 ответа
В Windows это консоль CMD, которая закрывается, потому что процесс Python существует в конце.
Чтобы предотвратить это, сначала откройте консоль, а затем используйте командную строку для запуска сценария. Сделайте это, щелкнув правой кнопкой мыши папку, содержащую скрипт, выберите Open console here и введите python scriptname.py в консоли.
Как вы выяснили, альтернативой является отложить сценарий, заканчивающийся добавлением вызова input() в конце. Это позволяет пользователю сценария выбирать, когда сценарий заканчивается и консоль закрывается.
Для сред Windows:
Если вы не хотите переходить в командную строку (или работать в среде, где командная строка ограничена), я думаю, что следующее решение — goo. Я использую решение для создания файла bat.
Используйте блокнот для создания текстового файла. В файле содержимое будет выглядеть примерно так:
Затем сохраните файл как «my_python_program.bat» — НЕ ЗАБУДЬТЕ ВЫБРАТЬ «Все файлы!
Когда вы запускаете файл bat, он запускает программу python и останавливается в конце, чтобы вы могли прочитать вывод. Затем, если вы нажмете любую клавишу, он закроет окно.
Это можно сделать с помощью модуля os. Ниже приведен простой код:
Это создаст паузу и попросит пользователя нажать любую клавишу для продолжения.
[править: вышеуказанный метод хорошо работает для Windows OS. Это похоже на проблему с Mac (как указано в комментариях ihue). Дело в том, что библиотека «os» зависит от операционной системы, и некоторые команды могут не работать с одной операционной системой, как они работают в другой.]
Python-сообщество
Пишу небольшие консольные программы на Python’e. Но после вывода данных при помощи print консоль сразу закрывается, и я даже неуспеваю увидеть результат. Что дописать в скрипте чтоб консоль не закрывалась, или хотябы закрывалась через некоторое время?
#2 Ноя. 20, 2011 15:22:38
Python: консоль исчезает сразу после выполнения
#3 Ноя. 20, 2011 15:38:07
Python: консоль исчезает сразу после выполнения
#4 Ноя. 20, 2011 23:24:19
Python: консоль исчезает сразу после выполнения
можно создать ярлык для cmd.exe, удалив в его свойствах путь к system32
тогда он будет открывать в той папке, где находится
иногда удобнее raw_input()/input()
Отредактировано py.user.next (Сен. 8, 2022 01:16:02)
#5 Дек. 2, 2011 20:57:31
Python: консоль исчезает сразу после выполнения
ну если приложение совсем уж простое то можно помимо raw_input() сделать например так:
ну это как вариант конечно =) ну и в том случае если у тебя *nix
но raw_input() все= както прощще =)
#6 Дек. 3, 2011 09:31:29
Python: консоль исчезает сразу после выполнения
ololo не поможет, вопрос касается уиндоус (когда щёлкаешь на скрипте, запуская его)
в лине то такой проблемы нет
Отредактировано (Дек. 3, 2011 09:32:56)
#7 Июль 13, 2021 16:48:09
Python: консоль исчезает сразу после выполнения
Начала изучать Питон. Сделала первую программку, файл.ру
Хочу открыть этот файл, но он моментально закрывается. Можно ли сделать, чтобы этот файл не закрывался?
Прикреплённый файлы:
Первая программа для Владика..py (411 байт)
#8 Июль 19, 2021 21:17:19
Python: консоль исчезает сразу после выполнения
я решаю эту проблему как мне кажется колхозным но крайне действенным методом
если мне нужно чтоб консоль осталась открыта я в конце добавляю
How to stop command prompt from closing in python?
Because i have looked for this problem on internet and came to know that you have to put some dummy input line at the end to stop the command prompt from getting closed but m still facing the problem.. pls Help
I am using python 3.3
5 Answers 5
On windows, it’s the CMD console that closes, because the Python process exists at the end.
To prevent this, open the console first, then use the command line to run your script. Do this by right-clicking on the folder that contains the script, select Open console here and typing in python scriptname.py in the console.
The alternative is, as you’ve found out, to postpone the script ending by adding a input() call at the end. This allows the user of the script to choose when the script ends and the console closes.
Related posts:
- Как установить границы абзаца в word
- Что такое префикс в программировании
- Как установить датчик давления на диск
- Как экспортировать письма из thunderbird
Источник: www.kak-zarabotat-v-internete.ru