पाइथन सूचियों (लिस्ट) में हेरफेर करने के लिए उपकरणों का एक समृद्ध समूह प्रदान करता है, और दो बार-बार उपयोग की जाने वाली विधियाँ append()
और extend()
हैं। जबकि दोनों सूची में तत्व जोड़ते हैं, उनका व्यवहार काफी भिन्न होता है, जिससे आपकी परिणामी सूची की संरचना प्रभावित होती है। इस अंतर को समझना कुशल और पूर्वानुमेय पाइथन कोड लिखने की कुंजी है।
विषय-सूची:
- तत्व जोड़ना:
append()
विधि - सूचियों का विस्तार करना:
extend()
विधि - एक विस्तृत तुलना:
append()
बनामextend()
- व्यावहारिक अनुप्रयोग और सर्वोत्तम अभ्यास
- अक्सर पूछे जाने वाले प्रश्न
तत्व जोड़ना: append()
विधि
append()
विधि सूची के अंत में एक एकल तत्व जोड़ती है। तत्व का प्रकार कोई फर्क नहीं पड़ता; यह एक पूर्णांक, स्ट्रिंग, एक अन्य सूची, या कोई अन्य पाइथन ऑब्जेक्ट हो सकता है। मुख्य विशेषता यह है कि यह तत्व को एक एकल, अविभाज्य इकाई के रूप में जोड़ता है।
my_list = [1, 2, 3]
my_list.append(4) # 4 को अंत में जोड़ता है
print(my_list) # आउटपुट: [1, 2, 3, 4]
my_list.append([5, 6]) # [5, 6] को एक एकल तत्व के रूप में जोड़ता है
print(my_list) # आउटपुट: [1, 2, 3, 4, [5, 6]]
देखें कि दूसरे उदाहरण में, सूची [5, 6]
my_list
के भीतर एक एकल तत्व बन जाती है; इसे अनपैक नहीं किया जाता है।
सूचियों का विस्तार करना: extend()
विधि
इसके विपरीत, extend()
एक इटरेबल (जैसे सूची, टुपल, या स्ट्रिंग) को एक तर्क के रूप में लेता है और उस इटरेबल के प्रत्येक *व्यक्तिगत आइटम* को सूची के अंत में जोड़ता है। यह प्रभावी रूप से इटरेबल की सामग्री को अनपैक करता है।
my_list = [1, 2, 3]
my_list.extend([4, 5]) # 4 और 5 को अलग-अलग जोड़ता है
print(my_list) # आउटपुट: [1, 2, 3, 4, 5]
my_list.extend("abc") # 'a', 'b', और 'c' को अलग-अलग जोड़ता है
print(my_list) # आउटपुट: [1, 2, 3, 4, 5, 'a', 'b', 'c']
यहाँ, extend()
[4, 5]
से प्रत्येक तत्व और "abc"
से प्रत्येक वर्ण को my_list
में अलग-अलग तत्वों के रूप में जोड़ता है।
एक विस्तृत तुलना: append()
बनाम extend()
नीचे दी गई तालिका प्रमुख अंतरों को सारांशित करती है:
सुविधा | append() |
extend() |
---|---|---|
तर्क प्रकार | एकल तत्व | इटरेबल (सूची, टुपल, स्ट्रिंग, आदि) |
क्रिया | एक एकल तत्व जोड़ता है | एक इटरेबल से कई तत्व जोड़ता है |
सूची संशोधन | सूची की लंबाई 1 से बढ़ जाती है | सूची की लंबाई इटरेबल में आइटम की संख्या से बढ़ जाती है |
दक्षता | आमतौर पर एकल आइटम जोड़ने के लिए तेज़ | एक इटरेबल से कई आइटम जोड़ने के लिए अधिक कुशल |
व्यावहारिक अनुप्रयोग और सर्वोत्तम अभ्यास
append()
और extend()
के बीच चयन पूरी तरह से आपके उद्देश्य पर निर्भर करता है। जब आपको अपनी सूची में एक एकल आइटम जोड़ने की आवश्यकता हो तो append()
का उपयोग करें। जब आप किसी अन्य इटरेबल से कई आइटम जोड़ना चाहते हैं, जैसे कि दो सूचियों को मिलाना, तो extend()
का उपयोग करें। गलत उपयोग से अप्रत्याशित सूची संरचनाएँ हो सकती हैं, इसलिए मजबूत पाइथन कोड लिखने के लिए उनके अंतर को समझना महत्वपूर्ण है।
अक्सर पूछे जाने वाले प्रश्न
- प्रश्न: क्या मैं एक इटरेबल के साथ
append()
का उपयोग कर सकता हूँ? उत्तर: हाँ, लेकिन संपूर्ण इटरेबल को एक एकल तत्व के रूप में जोड़ा जाएगा। - प्रश्न: क्या मैं एक एकल तत्व के साथ
extend()
का उपयोग कर सकता हूँ? उत्तर: हाँ, लेकिन यहappend()
की तुलना में कम कुशल है क्योंकि पाइथन एकल तत्व को एक एक-तत्व इटरेबल के रूप में मानेगा। - प्रश्न: कौन सी विधि तेज़ है? उत्तर:
append()
आम तौर पर तेज़ है, खासकर एकल तत्व जोड़ने के लिए, क्योंकि यह पुनरावृत्ति के अतिरिक्त भार से बचता है। अंतर आमतौर पर नगण्य होता है जब तक कि आप असाधारण रूप से बड़ी सूचियों के साथ काम नहीं कर रहे हों।