【发布时间】:2019-11-16 09:39:21
【问题描述】:
我在 spyder 中使用 python 版本 3.7.1。
当我运行一个脚本并且我需要调试时,我只需在错误发生之前输入该行下方的行。
断点()
到目前为止,对于我的基本需求,这已经足够了。我可以在 ipdb> 命令行部分看到变量或类型命令的当前值。
但是我不知道如何使用条件断点?我试过阅读各种网站,但不太明白我需要做什么。他们也倾向于提到 pdb 而不是 ipdb。如何使用条件断点?
【问题讨论】:
-
你试过把它放在 if 语句下吗?
if my_condition: breakpoint() -
不,我知道这会起作用,但我正在尝试习惯在 python 中使用调试。在其他语言中,这似乎更容易一些
-
条件断点对于 IDE 来说真的很容易,但对于 ipython,我猜想它更难实现(或超出项目范围),看看它是如何成为 Python 控制台的前端。如果您想更好地控制代码流,您应该尝试 PyCharm Community Edition(免费),或者如果您是学生,您甚至可以免费使用 PyCharm Professional。
-
pdb本身有一个语法,你可以在ipdb中使用它:stackoverflow.com/a/55159862/71631