我有一个像这样的生成器:
def iterate_my_objects_if_something(self):
for x in self.my_objects:
if x.something:
yield x
我这样调用它:
for x in self.iterate_my_objects_if_something():
pass
在没有任何可返回的情况下,这会尝试遍历 NoneType 并抛出异常。
我该如何返回一个空的生成器?
最佳答案
只需做一个简单的检查:
def iterate_my_objects_if_something(self):
if self.my_objects:
for x in self.my_objects:
if x.something:
yield x
关于Python - 没有任何返回的生成器案例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17713094/