【发布时间】:2019-03-13 13:01:39
【问题描述】:
我知道我可以像这样在命令行上调试Dummy.py:
python -m pdb Dummy.py
现在,我正在尝试了解 Visual Studio Code 中调试控制台的一些行为,我相信我可能会追查到 pydevd 的行为。 (基本上,调试控制台reports incorrect error messages 用于a = no_existing_function() 等行。)
所以我想做的是以与上面的pdb 类似的方式使用pydevd,但我没有做到这一点。我已经设法启动了一个“服务器”,
import pydevconsole
pydevconsole.start_server('localhost', 5678, 1234)
并启动一个“客户端”并连接到上面的服务器:
import pydevd
from _pydevd_bundle import pydevd_comm
print(pydevd_comm.start_client('localhost', 5678))
pydevd.settrace()
但是,我不确定下一步该做什么。在我看来,pydevd 只是一个中间人,期望其他东西连接到我选择的端口1234。但它实际上在期待什么?我可以用 telnet 之类的东西连接,或者完全短路这个连接以获得真正交互式的控制台,我可以在其中键入要在 Dummy.py 范围内评估的命令吗?
【问题讨论】:
-
这里还有两个相关的东西要收集:
set PYDEV_DEBUG=True在pydevd中启用更多调试输出,github.com/nyyManni/pydev-client