在python中,可以通过将yield关键字放在函数体中来轻松定义迭代器函数,例如:
def gen():
for i in range(100):
yield i
Run Code Online (Sandbox Code Playgroud)
如何定义不产生值的生成器函数(生成0值),以下代码不起作用,因为python不能知道它应该是生成器而不是正常函数:
def empty():
pass
Run Code Online (Sandbox Code Playgroud)
我可以做点什么
def empty():
if False:
yield None
Run Code Online (Sandbox Code Playgroud)
但那会非常难看.有没有很好的方法来实现一个空的迭代器函数?