Как я могу остановить запуск python.exe сразу после получения результата?
Есть ли способ остановить запуск python.exe сразу после его завершения? Он закрывается быстрее, чем я могу прочитать результат.
Вот программа:
width = float(input("Enter the width: "))
height = float(input("Enter the height: "))
area = width * height
print("The area is", area, "square units.")
Ответы
Ответ 1
Вы не можете - глобально, т.е. для каждой программы python. И это хорошо - Python отлично подходит для написания сценариев (автоматизация), а скрипты должны работать без какого-либо взаимодействия с пользователем.
Однако вы всегда можете запросить ввод в конце вашей программы, эффективно сохраняя программу до тех пор, пока вы не нажмете return. Используйте input("prompt: ")
в Python 3 (или raw_input("promt: ")
в Python 2). Или привыкнуть к запуску ваших программ из командной строки (т.е. python mine.py
), программа выйдет, но ее вывод останется видимым.
Ответ 2
Просто объявите переменную типа k
или m
или любой другой, который вы хотите, теперь просто добавьте этот фрагмент кода в конец вашей программы
k=input("press close to exit")
Здесь я просто принял k
как переменную для приостановки программы, вы можете использовать любую переменную, которая вам нравится.
Ответ 3
Похоже, что вы запускаете что-то в Windows, дважды щелкнув по нему. Это запустит программу в новом окне и закроет окно, когда оно будет завершено. Неудивительно, что вы не можете прочитать результат.
Лучшим способом сделать это будет переход на командную строку. Переместите (cd
) в каталог, где находится программа, а затем вызовите его с помощью python
. Что-то вроде этого:
C:\> cd C:\my_programs\
C:\my_programs\> python area.py
Замените my_programs
на фактическое местоположение вашей программы и area.py
с именем вашего файла python.
Ответ 4
Вспомогательный ответ
Ответ Manoj Govindan правильный, но я увидел этот комментарий:
Запустите его с терминала.
И подумал о том, почему это так не очевидно для пользователей Windows, и осознал это, потому что CMD.EXE - такое плохое оправдание для оболочки, с которой она должна начинаться с:
Командный интерпретатор Windows copyright 1999 Microsoft
Майн Готт! Что бы вы ни делали, не используйте это!
C: >
Что приводит меня к пункту https://stackoverflow.com/questions/913912/bash-shell-for-windows
Ответ 5
В средах Windows:
Если вы не хотите идти в командную строку (или работать в среде, где ограничена командная строка), я думаю, что следующее решение лучше, чем вставка кода в python, который просит вас нажать любую клавишу, потому что если программа выходит из строя, прежде чем она достигнет этой точки, окно закрывается, и вы теряете информацию об аварии. Решение, которое я использую, заключается в создании файла bat.
Используйте блокнот для создания текстового файла. В файле содержимое будет выглядеть примерно так:
my_python_program.py
pause
Затем сохраните файл как "my_python_program.bat"
Когда вы запустите файл bat, он запустит программу python и остановится в конце, чтобы вы могли прочитать результат. Затем, если вы нажмете любую клавишу, он закроет окно.
Ответ 6
В Windows, если Python установлен в каталог по умолчанию (для меня это):
cd C:\Python27
Затем перейдите к типу
"python.exe "[FULLPATH]\[name].py"
для запуска вашего Python script в командной строке
Ответ 7
Файлы Python являются исполняемыми, что означает, что вы можете запускать их непосредственно из командной строки (при условии, что у вас есть окна). Вы должны иметь возможность просто войти в каталог, а затем запустить программу.
Кроме того, (если у вас есть python 3), вы можете написать:
input("Press enter to close program")
и вы можете просто нажать клавишу ввода, когда вы прочтете результаты.