"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > कैसे `ज़िप ([iter (s)]*n)` कुशलता से पायथन में एक सूची को समान chunks में विभाजित करता है?

कैसे `ज़िप ([iter (s)]*n)` कुशलता से पायथन में एक सूची को समान chunks में विभाजित करता है?

2025-02-06 पर पोस्ट किया गया
ब्राउज़ करें:387

टुपल्स के एक एकल पुनरावृत्त में। जब सिंटैक्स ज़िप (How does `zip([iter(s)]*n)` efficiently split a list into equal chunks in Python? 
[iter (s)]

n) के साथ उपयोग किया जाता है, तो यह एक सूची को समान आकार में विभाजित करने के लिए एक सुविधाजनक तरीका प्रदान करता है। ] Iterator की प्रत्येक प्रति सूची की शुरुआत में शुरू होती है। *Args सूची को ज़िप () के लिए तर्कों में अनपैक करता है, जिसके परिणामस्वरूप n iterables फ़ंक्शन के लिए पारित किया जा रहा है। (

[iter (s)] def verbose_chunk (s, n): "" एक सूची से समान आकार के विखंडू की एक सूची देता है। "" chunks = [] के लिए मैं रेंज में (n): चंक = [] J के लिए रेंज (लेन (s) // n): chunk.append (अगला (iter (ओं))) chunks.append (tuple (चंक)) रिटर्न चंक्स

यह कोड पहले चंक्स की वांछित संख्या पर पुनरावृत्ति करता है। प्रत्येक चंक के लिए, यह सूची में तत्वों पर पुनरावृत्ति करने के लिए एक नेस्टेड लूप का उपयोग करता है और उन्हें चंक में जोड़ता है। चंक को तब एक टपल में परिवर्तित किया जाता है और चंक्स की सूची में जोड़ा जाता है। , 7,8,9] एन = 3 प्रिंट (सूची (ZIP (*[ITER (S)]]*n)) # [(1,2,3), (4,5,6), (7,8,9)]] प्रिंट (verbose_chunk (s, n)) # [(1,2,3), (4,5,6), (7,8,9)] दोनों दृष्टिकोण एक ही परिणाम का उत्पादन करते हैं, संक्षिप्त ज़िप (

[iter (s)]

n) अभिव्यक्ति chunks में विभाजित सूचियों के लिए एक अधिक कुशल वाक्यविन्यास की पेशकश।

नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3