मैं एक जनरेटर इस तरह परिभाषित किया है:लेखन त्रुटि: 'जनरेटर' ऑब्जेक्ट प्रतिदेय नहीं है
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
मैं क्या गलत समझ रहा हूँ ?
वह सरल हुह ... :- डी –
@AmigableClarkKant, पहले स्थान पर कोष्ठक रखने के लिए तर्क क्या था? – unkulunkulu
@unkulunkulu: शायद जनरेटर उत्पन्न करने वाले फ़ंक्शन नाम के साथ भ्रम। –