在获得输出后,如何阻止python.exe立即关闭?

时间:2010-08-28 17:53:52

标签: python

有什么办法可以阻止python.exe在完成后立即关闭?它关闭的速度比我读取输出的速度快。

以下是该计划:

width = float(input("Enter the width: "))
height = float(input("Enter the height: "))
area = width * height
print("The area is", area, "square units.")

7 个答案:

答案 0 :(得分:46)

你不能 - 全局,即每个python程序。这是一件好事--Python非常适合编写脚本(自动化东西),脚本应该能够在没有任何用户交互的情况下运行。

但是,您可以随时在程序结束时询问输入,有效地保持程序存活,直到您按回车键。使用input("prompt: ") in Python 3(或Python 2中的raw_input("promt: "))。或习惯从命令行运行程序(即python mine.py),程序将退出,但其输出仍然可见。

答案 1 :(得分:14)

只需声明一个像km这样的变量或任何其他你想要的变量,现在只需在程序的最后添加这段代码

k=input("press close to exit") 

这里我假设k为变量来暂停程序,你可以使用你喜欢的任何变量。

答案 2 :(得分:7)

对于Windows环境:

如果您不想转到命令提示符(或在限制命令提示符的环境中工作),我认为以下解决方案比将代码插入python要求您按任意键更好 - 因为如果程序在到达该点之前崩溃,窗口关闭并且您丢失了崩溃信息。我使用的解决方案是创建一个bat文件。

使用记事本创建文本文件。在文件中,内容将类似于:

my_python_program.py
pause

然后将文件另存为“my_python_program.bat”

运行bat文件时,它将运行python程序并在结尾处暂停以允许您读取输出。然后,如果按任意键,它将关闭窗口。

答案 3 :(得分:6)

辅助答案

Manoj Govindan的回答是正确的,但我看到了这个评论:

  

从终端运行它。

并且开始思考为什么这对Windows用户来说并不那么明显,并且意识到这是因为CMD.EXE对于shell来说是一个如此糟糕的借口,应该从它开始:

  

Windows命令解释器版权所有1999 Microsoft   Mein Gott !!无论你做什么,都不要使用这个!!
  C:>

这引导我指出https://stackoverflow.com/questions/913912/bash-shell-for-windows

答案 4 :(得分:4)

看起来你通过双击在Windows上运行某些东西。这将在新窗口中执行程序,并在终止时关闭窗口。难怪你无法阅读输出。

更好的方法是切换到命令提示符。导航(cd)到程序所在的目录,然后使用python进行调用。像这样:

C:\> cd C:\my_programs\
C:\my_programs\> python area.py

my_programs替换为程序的实际位置,将area.py替换为python文件的名称。

答案 5 :(得分:2)

Python文件是可执行文件,这意味着您可以直接从命令提示符运行它们(假设您有Windows)。您应该只需输入目录,然后运行该程序。 另外,(假设你有python 3),你可以写:

input("Press enter to close program")

您可以在阅读结果时按Enter键。

答案 6 :(得分:1)

在Windows中,如果将Python安装到默认目录中(对我而言):

cd C:\Python27

然后继续输入

"python.exe "[FULLPATH]\[name].py" 

在命令提示符

中运行Python脚本