Tôi có một máy phát điện được định nghĩa như thế này:Lỗi Loại: đối tượng 'phát' là không thể được gọi
def lengths(x):
for k, v in x.items():
yield v['time_length']
Và nó hoạt động, gọi nó với
for i in lengths(x):
print i
sản xuất:
3600
1200
3600
300
đó là những con số chính xác.
Tuy nhiên, khi tôi gọi nó như vậy:
somefun(lengths(x))
nơi somefun()
được định nghĩa là:
def somefun(lengths):
for length in lengths(): # <--- ERROR HERE
if not is_blahblah(length): return False
tôi nhận được thông báo lỗi này:
TypeError: 'generator' object is not callable
tôi hiểu lầm gì ?
Điều đó đơn giản huh ... :-D –
@AmigableClarkKant, lý do để đặt dấu ngoặc đơn ở vị trí đầu tiên là gì? – unkulunkulu
@unkulunkulu: có thể nhầm lẫn với tên hàm tạo ra trình tạo. –