我一直在使用输入函数作为暂停脚本的一种方式:
print("something")
wait = input("Press Enter to continue.")
print("something")
有正式的方式吗?
我一直在使用输入函数作为暂停脚本的一种方式:
print("something")
wait = input("Press Enter to continue.")
print("something")
有正式的方式吗?
当前回答
这对我来说似乎很好(或Python 2.X中的raw_input())。或者,如果想要暂停特定的秒数,也可以使用time.sleep()。
import time
print("something")
time.sleep(5.5) # Pause 5.5 seconds
print("something")
其他回答
我和喜欢简单解决方案的非程序员一起工作:
import code
code.interact(banner='Paused. Press ^D (Ctrl+D) to continue.', local=globals())
这产生了一个几乎完全像真正的解释器一样的解释器,包括当前上下文,只有输出:
Paused. Press ^D (Ctrl+D) to continue. >>>
Python调试器也是暂停的好方法。
import pdb
pdb.set_trace() # Python 2
or
breakpoint() # Python 3
通过这个方法,你可以通过按任何指定的键来恢复你的程序:
import keyboard
while True:
key = keyboard.read_key()
if key == 'space': # You can put any key you like instead of 'space'
break
同样的方法,但方式不同:
import keyboard
while True:
if keyboard.is_pressed('space'): # The same. you can put any key you like instead of 'space'
break
注意:你可以通过在shell或cmd中写这个命令来安装键盘模块:
pip install keyboard
这对我来说似乎很好(或Python 2.X中的raw_input())。或者,如果想要暂停特定的秒数,也可以使用time.sleep()。
import time
print("something")
time.sleep(5.5) # Pause 5.5 seconds
print("something")
为了跨Python 2/3兼容性,你可以通过六个库使用输入:
import six
six.moves.input( 'Press the <ENTER> key to continue...' )
我认为停止执行的最好方法是time.sleep()函数。
如果你只需要在某些情况下暂停执行,你可以简单地实现一个If语句,就像这样:
if somethinghappen:
time.sleep(seconds)
您可以让else分支为空。