gpt4 book ai didi

python - 在 Python 调试器 pdb 中,如何在不终止调试 session 的情况下退出交互模式

转载 作者:IT老高 更新时间:2023-10-28 21:11:28 31 4
gpt4 key购买 nike

使用python 3.5.1

当我使用 python 调试器模块运行脚本时:

  [home]# python -m pdb myscript.py

这将启动一个调试 session :

  > /somepath/to/myscript.py(1)<module>()
-> import os
(Pdb)

如果我想从调试 session 中进入交互式终端,我可以发出 interact 命令:

(Pdb) interact
*interactive*
>>>

现在我可以与代码进行交互,就好像我处于运行中的 python 交互模式一样,可以访问在我进入 interact 时在调试器中运行的脚本范围内的任何函数或变量模式。

当我发出退出交互模式(继续调试)的命令时,它会终止整个调试 session :

>>> exit()
The program exited via sys.exit(). Exit status: None
....long nasty stack trace here....

[home]#

我也尝试过 quit(),它也终止了调试器。

如何在不终止整个调试 session 的情况下退出 interact 模式?这甚至可能吗?

理想情况下,我想在我离开的地方返回到 Debug模式,这样我就可以继续单步执行我的代码。

最佳答案

发送 EOFCtrl + D 应该可以工作:

$ python -m pdb myscript.py
> .../myscript.py(1)<module>()
-> import os
(Pdb) import code
(Pdb) code.interact()
Python 2.7.11 (default, Dec 27 2015, 01:48:39)
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.57)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>> <CTRL-D>
(Pdb) c
...

关于python - 在 Python 调试器 pdb 中,如何在不终止调试 session 的情况下退出交互模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36945059/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com