Python - 暂停程序和发送命令可能吗?

时间:2015-04-27 13:56:11

标签: python python-2.7 python-3.x

有没有办法暂停Python程序,并且能够在暂停期间从提示符发送命令,然后才能恢复代码?

我发现暂停的唯一方法是要求键盘输入(例如按回车键),但是当它等待你按下回车键时你不能输入命令。 有没有办法真正暂停代码?有权访问所有变量,并可能在恢复之前在提示中修改它们吗?

1 个答案:

答案 0 :(得分:3)

如果您想将其用于调试,请查看pdbPython 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