सामग्री पर जाएं
Python अपवादजानकारी
StopIteration

StopIteration

Iterator में कोई और items न होने पर next() function द्वारा raise किया जाता है।

python

इस एरर के कारण

आपने ख़त्म हो चुके इटरेटर पर next() कॉल किया। Python इटरेशन के अंत का संकेत देने के लिए यही सामान्य तरीका अपनाता है। for लूप इसे अपने आप पकड़ लेते हैं, लेकिन हाथ से किए गए next() कॉल नहीं पकड़ते।

इसे कैसे ठीक करें

डिफ़ॉल्ट मान दें: next(iterator, default_value)। हाथ से next() कॉल करने के बजाय for लूप का उपयोग करें। next() को try-except StopIteration में रखें। next() कॉल करने से पहले जाँच लें कि इटरेटर में आइटम बचे हैं।

उदाहरण

it = iter([]); next(it)  # StopIteration
आधिकारिक दस्तावेज़

संबंधित एरर कोड