有没有办法暂停Python程序,并且能够在暂停期间从提示符发送命令,然后才能恢复代码?
我发现暂停的唯一方法是要求键盘输入(例如按回车键),但是当它等待你按下回车键时你不能输入命令。 有没有办法真正暂停代码?有权访问所有变量,并可能在恢复之前在提示中修改它们吗?
答案 0 :(得分:3)
如果您想将其用于调试,请查看pdb
,Python debugger。您可以在pdb
下启动脚本,在所需的行上设置断点,然后运行脚本。
python -m pdb script.py
b 15 # <-- Set breakpoint on line 15
c # "continue" -> run your program
# will break on line 15
然后,您可以检查变量并调用函数。从Python 3.2开始,您还可以使用interact
中的pdb
命令在当前执行点获取常规Python shell!
您还可以直接在程序中包含以下行,以便在该行结束时停止进入pdb:
import pdb; pdb.set_trace()
然后你甚至不必在命令行上使用-m pdb
。