0

Python生成器函数过早结束时应该引发什么异常?

上下文:搜索表示为具有__iter__定义的允许代码的类的树,例如for i in BreadthFirstSearch(mytree).

这些搜索有一个max_depth值,在该值之后它应该停止返回值。

发生这种情况时应该引发什么异常,或者应该以其他方式完成?

4

1 回答 1

3

StopIteration是引发完全停止迭代的正确例外。但是,max_depth不应该停止max_depth遍历,当遍历已经处于深度时,它不应该简单地递归地下降到子节点。

于 2013-07-31T19:19:37.417 回答