在 VS Code 中导入的 Python 模块中设置断点

27

我想在VS code中的一个外部Python模块中设置断点。

我试过编辑源文件,在想要断点的位置插入import pdb; pdb.set_trace()

这会进入pdb命令行调试器,而不是VS Code GUI中的调试器。

如何在导入的Python模块中设置断点,以便进入VS Code调试器?

3个回答

32

3
除了像其他答案中提到的那样添加"justMyCode":false,还有一个细节让我花了一些时间才意识到。你必须使用左上角的"Run"按钮。

enter image description here

不要点击右上角的“运行调试Python文件”按钮。

enter image description here

希望这能帮助其他人节省时间。

对我来说起作用了!谢谢! (为什么这两个按钮的行为会不同呢..) - undefined

3

您需要将包含导入模块源代码的文件夹导入到项目中,使用文件->添加文件夹到工作区。在我的情况下,这是/Users/robinl/anaconda3/lib/python3.6/site-packages/great_expectations/

在VS code中,您可以像往常一样单击代码左侧设置断点,然后导航到要调试的文件。


8
另外,您可能需要添加一个启动配置"justMyCode":false。请参阅https://code.visualstudio.com/docs/python/debugging#_justmycode。 - Marvin
1
@Marvin 给出的答案对我来说似乎是唯一必要的步骤(我刚试过了,它有效)。 - sivano
2
在VS Code版本1.51.0中,Marvin的回答已经足够了,不需要导入文件夹!@sivano你应该在这里发布答案,当前接受的答案过于复杂。 - chrisinmtown
这是唯一对我有效的解决方案!在我的情况下,设置“"justMyCode": false”是不够的。非常感谢! - Blubsiwubsi

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接