即使yield
子句中的else
似乎仍然有效。
from collections import Iterable
def f(args):
if not isinstance(args, Iterable):
return args
else:
for i in args:
yield i
a = 4
ret = f(a)
print(ret)
我希望可以打印int 4,但是ret
是一个生成器。
但是,yield
位于else
子句中,该子句不起作用。