अंतर्निहित कार्यों का उपयोग करके अलग-अलग आकार की सूचियों को ज़िप करना
हालांकि अंतर्निहित ज़िप फ़ंक्शन दो को मर्ज करते समय छोटी सूची को दोहराने में असमर्थ है अलग-अलग आकार की सूचियाँ, आप इस परिणाम को प्राप्त करने के लिए itertools.cycle फ़ंक्शन का लाभ उठा सकते हैं।
साइकिल पायथन पैकेज से itertools एक पुनरावर्तक बनाता है जो किसी पुनरावर्तनीय से तत्वों को उसके समाप्त होने के बाद भी बार-बार लौटाता है। ज़िप को चक्र के साथ जोड़कर, सूचियों के बीच आकार की विसंगति को संभालना और यह सुनिश्चित करना संभव है कि आवश्यकतानुसार लंबी सूची दोहराई जाए।
उदाहरण:
A = [1, 2, 3, 4, 5, 6, 7, 8, 9]
B = ["A", "B", "C"]
# Use itertools.cycle to repeat the shorter list
from itertools import cycle
zip_list = zip(A, cycle(B)) if len(A) > len(B) else zip(cycle(A), B)
इस उदाहरण में:
यह कैसे काम करता है:
itertools.cycle पुनरावर्तनीय की एक प्रति बनाता है (इस मामले में, बी) और बार-बार अपने तत्वों को लौटाता है। जैसे ही ज़िप ए के माध्यम से पुनरावृत्त होता है, यह प्रत्येक तत्व को साइक्लिंग इटरेटर से अगले उपलब्ध तत्व के साथ जोड़ता है। इसके विपरीत, यदि A लंबा है, तो B पुनरावर्तक मर्ज की गई सूची के शेष भाग को भरने के लिए लगातार चक्र करता है।अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3