pycharm 或者其他 ide 或者 pdb 有没有根据条件自动断点的功能

2021 年 1 月 24 日
 chaleaoch

就是说, pdb 监控程序,当满足某个条件(譬如某个变量 == 某个值), 程序暂停.

我现在不知道某个变量是在哪里被赋的值. 如果有这个功能就很容易了,要不然只能单步, 慢慢看.

2823 次点击
所在节点    Python
13 条回复
jhdsgfww
2021 年 1 月 24 日
用 ipdb 直接写在代码里面试一下?
```python
import ipdb

# some codes here.
if somevar == somevalue:
ipdb.set_trace()
# some codes here.
```
labubu
2021 年 1 月 24 日
pycharm 不是有吗?
j0hnj
2021 年 1 月 24 日
pycharm 在断点上右键可以设置
UN2758
2021 年 1 月 24 日
有啊,
UN2758
2021 年 1 月 24 日
xiaolinjia
2021 年 1 月 24 日
或许你可以试试,pysnooper 这个库。
cabing
2021 年 1 月 24 日
改用微软的 vscode,一级棒。
milkpuff
2021 年 1 月 24 日
python 代码里面可以直接调用 breakpoint()函数
tiedan
2021 年 1 月 25 日
在断点直接右键可以添加触发条件
reed2020
2021 年 1 月 25 日
右击 PyCharm 的断点红点就有
wbyyffhh
2021 年 1 月 25 日
学到了
no1xsyzy
2021 年 1 月 25 日
修改断点设置有点不对吧,连在哪赋值的都不知道……
1. (不管哪个) IDE 能够自动选中所有变量引用( PyCharm 默认 Alt+F7 )
2. Pysnooper ? Cyberbrain ?
3. 如果是属性值,可以迅速转写成一个 property 并在 setter 里加断点。
4. 二分法 trace 。
chaleaoch
2021 年 1 月 25 日
@no1xsyzy 感谢感谢. 是我想要的.

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://study.congcong.us/t/747826

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX