PyCharm的调试器可以完美地运行,除了在包含内置方法copy.deepcopy()的行中单击时除外。跨过它们会使程序运行结束,就好像没有调试器在运行一样。我曾尝试进入deepcopy(),但似乎总是陷入递归循环中。代码运行良好,调试器或没有调试器,我只是在执行deepcopy()操作后无法运行调试器,这很烦人。
pdb.set_trace()可以正常工作,但最终我还是想使用PyCharm的调试器,而且我真的很好奇这里发生的事情。
PyCharm的调试器可以完美地运行,除了在包含内置方法copy.deepcopy()的行中单击时除外。单步执行它们会使程序运行结束,就好像没有调试器...
修改您的__getattr__方法以忽略以双下划线开头的属性。这适用于没有很多附加对象并防止PyCharm断开调试器连接的对象:
也发生在我身上,经过大量的试验和错误,我弄清楚了是什么原因造成的,(但是我不知道为什么)我正在深复制的对象实现了getattr
尝试将pydevd.settrace()
作为您尝试调试的函数的第一行,或者紧接在deepcopy()
之后>]