पायथन में एक सूची में कई मूल्यों को कैसे जोड़ा जाए


175

मैं यह जानने की कोशिश कर रहा हूं कि पायथन में एक सूची में कई मूल्यों को कैसे जोड़ा जाए। मुझे पता है कि इस तरह के मैन्युअल रूप से इनपुट मानों के रूप में ऐसा करने के लिए कुछ तरीके हैं, या एक में संलग्न आपरेशन पुर forपाश, या appendऔर extendकार्य करता है।

हालांकि, मुझे आश्चर्य है कि क्या ऐसा करने के लिए अधिक साफ-सुथरा तरीका है? शायद एक निश्चित पैकेज या फ़ंक्शन?


8
क्या आपने अभी तक सूची प्रलेखन पाया है?
मार्टिन पीटर्स

5
आपने कहा कि आपको पता है कि ऐसा करने के लिए कुछ विधियाँ हैं , लेकिन जो आपने कोशिश की, वह नहीं दिखाते हैं, या यह बताते हैं कि जिन तरीकों से आप जानते हैं, वे पर्याप्त रूप से पर्याप्त नहीं हैं।
बेकार

कृपया से अधिक साफextend() परिभाषित करें ।
फ्रैडरिक हमीदी

3
@ Frédéric Hamidi more neat == additional package dependency, बिल्कुल!
हेक्सपरोट

1
इस प्रश्न को ऑफ़-टॉपिक कैसे माना जा सकता है?
विक्टर श्रोडर

जवाबों:


352

आप किसी भी प्रकार की पुनरावृति से कई मूल्यों द्वारा सूची का विस्तार करने के लिए अनुक्रम विधिlist.extend का उपयोग कर सकते हैं , यह किसी अन्य सूची या किसी अन्य चीज से हो सकता है जो मूल्यों का अनुक्रम प्रदान करता है।

>>> lst = [1, 2]
>>> lst.append(3)
>>> lst.append(4)
>>> lst
[1, 2, 3, 4]

>>> lst.extend([5, 6, 7])
>>> lst.extend((8, 9, 10))
>>> lst
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

>>> lst.extend(range(11, 14))
>>> lst
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13]

तो अगर आप उपयोग कर सकते हैं list.append()संलग्न करने के लिए एक एकल मूल्य, और list.extend()संलग्न करने के लिए एक से अधिक मान।


1
पायथन का उपयोग करने के दिन 1 पर किसी को जनरेटर शुरू करने के लिए थोड़ा जटिल।
डैनियल रोजमैन 14

1
@DanielRoseman मेरा कहना है कि मूल्य किसी भी प्रकार के चलने योग्य अनुक्रम से आ सकते हैं ।
पोक

6
ध्यान दें कि आपके द्वारा जोड़े गए तत्व की संरचना में विस्तार नहीं है append()। एपेंड का उपयोग करके अपने उदाहरण के साथ, आपको मिलेगा [1, 2, 3, 4, [5, 6, 7], (8, 9, 10), range(11, 14)]अजगर 3
योहन ओबदिया

1
@ योहनोबदिया यदि '17 में पायथन 3 के लिए ऐसा होता, तो अब ऐसा नहीं है - पायथन 3.7.7 बिल्कुल वही करता है जो पोक ने वर्णित किया है।
Post169

28

के अलावा अन्य appendसमारोह, यदि "एक से अधिक मान" द्वारा आप एक और सूची मतलब है, आप बस उन्हें इतना चाहते जोड़ सकते हैं।

>>> a = [1,2,3]
>>> b = [4,5,6]
>>> a + b
[1, 2, 3, 4, 5, 6]

9

आप पर एक नज़र डालें तो सरकारी डॉक्स , तो आप सही नीचे देखेंगे append, extend। वही आपकी तलाश है।

वहाँ भी है itertools.chainअगर आप पूरी तरह से आबादी वाले डेटा संरचना के साथ समाप्त होने की तुलना में कुशल पुनरावृत्ति में अधिक रुचि रखते हैं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.