我在 Windows 7 x64 上使用 pydev,我发现生成器函数中的断点被忽略(如果我注释掉yield
,一切正常)。
然后我发现了一个古老的 SO 问题Python 调试器是否会进入生成器?
答案是“我刚刚测试了 eclipse,它会在安装了 pydev 的情况下进行调试。”
但是当我测试代码时,断点仍然被忽略。
def example(n):
i = 1
while i <= n:
yield i
i += 1
print "hello"
print "goodbye"
if __name__ == '__main__':
example(8)
所以我的问题是:
- PyDev 是否能够介入生成器?
- 如果没有,我应该怎么做才能调试这样的代码?