我一直在使用输入函数作为暂停脚本的一种方式:

print("something")
wait = input("Press Enter to continue.")
print("something")

有正式的方式吗?


当前回答

非常简单:

raw_input("Press Enter to continue ...")
print("Doing something...")

其他回答

所以,我发现这在我的编程工作中非常有效。我只是在程序的最开始创建了一个函数,

def pause():
    programPause = raw_input("Press the <ENTER> key to continue...")

现在我可以在任何需要的时候使用pause()函数,就像我在写一个批处理文件一样。例如,在这样的程序中:

import os
import system

def pause():
    programPause = raw_input("Press the <ENTER> key to continue...")

print("Think about what you ate for dinner last night...")
pause()

很明显,这个项目没有目标,只是举个例子,但你可以准确地理解我的意思。

注意:对于Python 3,你需要使用input而不是raw_input

我想我喜欢这个解决方案:

import getpass
getpass.getpass("Press Enter to Continue")

它隐藏了用户输入的任何内容,这有助于澄清这里没有使用输入。

但是要注意OS X平台。它显示了一个可能令人困惑的键。


最好的解决方案可能是自己执行类似getpass模块的操作,而不执行read -s调用。也许让前景色与背景颜色相匹配?

非常简单:

raw_input("Press Enter to continue ...")
print("Doing something...")

我在Python 2和Python 3中使用以下代码暂停代码执行,直到用户按下Enter

import six

if six.PY2:
    raw_input("Press the <Enter> key to continue...")
else:
    input("Press the <Enter> key to continue...")

我认为停止执行的最好方法是time.sleep()函数。

如果你只需要在某些情况下暂停执行,你可以简单地实现一个If语句,就像这样:

if somethinghappen:
    time.sleep(seconds)

您可以让else分支为空。