पायथन में जेनरेटर ऑब्जेक्ट को रीसेट करना: विकल्पों की खोज करना
जेनरेटर सूची बनाए बिना मूल्यों के अनुक्रम पर पुनरावृत्ति करने का एक कुशल तरीका प्रदान करते हैं याद। हालाँकि, एक बार जब जनरेटर अपने सभी मूल्य प्राप्त कर लेता है, तो यह समाप्त हो जाता है और इसे सीधे पुन: उपयोग नहीं किया जा सकता है। इससे यह सवाल उठता है कि पायथन में जेनरेटर ऑब्जेक्ट को कैसे रीसेट किया जाए।
दुर्भाग्य से, जेनरेटर के पास अंतर्निहित रीसेट विधि नहीं है। जनरेटर का पुन: उपयोग करने के लिए, आपके पास कई विकल्प हैं:
प्रत्येक विकल्प के लिए निम्नलिखित कोड अंश पर विचार करें:
विकल्प 1 (जेनरेटर फ़ंक्शन फिर से चलाएँ):
y = FunctionWithYield()
for x in y:
print(x)
y = FunctionWithYield()
for x in y:
print(x)
विकल्प 2 (जेनरेटर परिणामों को एक सूची में संग्रहीत करें):
y = list(FunctionWithYield())
for x in y:
print(x)
# Can iterate again:
for x in y:
print(x)
इन विकल्पों के बीच चुनाव आपके कार्यक्रम की विशिष्ट आवश्यकताओं पर निर्भर करता है। विकल्प 1 छोटे जनरेटर के लिए अधिक कुशल है या जब जनरेटर फ़ंक्शन को दोबारा चलाना कम्प्यूटेशनल रूप से महंगा नहीं है। विकल्प 2 बड़े जनरेटर के लिए अधिक उपयुक्त है जहां परिणामों को मेमोरी में संग्रहीत करना संभव है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3