Mam generator zdefiniowane tak:TypeError: 'generator' obiekt nie jest wymagalne
def lengths(x):
for k, v in x.items():
yield v['time_length']
I to działa, nazywając go
for i in lengths(x):
print i
produkuje:
3600
1200
3600
300
które są poprawnymi liczbami.
Jednak, kiedy nazywają to tak:
somefun(lengths(x))
gdzie somefun()
jest zdefiniowany jako:
def somefun(lengths):
for length in lengths(): # <--- ERROR HERE
if not is_blahblah(length): return False
otrzymuję komunikat o błędzie:
TypeError: 'generator' object is not callable
Co ja nieporozumienie ?
To proste huh ... :-D –
@AmigableClarkKant, jaka była logika, aby umieścić nawiasy tam na pierwszym miejscu? – unkulunkulu
@unkulunkulu: prawdopodobnie pomyłka z nazwą funkcji, która generuje generator. –