【发布时间】:2012-08-17 23:18:30
【问题描述】:
我有一个这样定义的生成器:
def lengths(x):
for k, v in x.items():
yield v['time_length']
它的工作原理,调用它
for i in lengths(x):
print i
产生:
3600
1200
3600
300
哪些是正确的数字。
但是,当我这样称呼它时:
somefun(lengths(x))
其中somefun() 定义为:
def somefun(lengths):
for length in lengths(): # <--- ERROR HERE
if not is_blahblah(length): return False
我收到此错误消息:
TypeError: 'generator' object is not callable
我误会了什么?
【问题讨论】: