Python सूची समझ, जोड़ना, क्रमबद्ध करना, लंबाई [उदाहरण]
क्या है एक Python सूची?
सूची बिल्कुल वैसी ही है जैसी यह सुनाई देती है, एक कंटेनर जिसमें अलग-अलग चीजें होती हैं Python ऑब्जेक्ट, जो पूर्णांक, शब्द, मान आदि हो सकते हैं। यह अन्य प्रोग्रामिंग भाषाओं में एक सरणी के बराबर है। इसे वर्गाकार कोष्ठकों द्वारा दर्शाया जाता है (और यह उन विशेषताओं में से एक है जो इसे टपल से अलग करती है, जो कोष्ठकों द्वारा अलग किए जाते हैं)। यह परिवर्तनशील भी है, यानी इसे संशोधित या अद्यतन किया जा सकता है; टपल के विपरीत, जो अपरिवर्तनीय हैं।
के उदाहरण Python सूचियां:
Python सूचियाँ समरूप हो सकती हैं, अर्थात उनमें एक ही प्रकार की वस्तुएँ हो सकती हैं; या विषमांगी हो सकती हैं, अर्थात उनमें विभिन्न प्रकार की वस्तुएँ हो सकती हैं।
समरूप सूचियों के उदाहरणों में शामिल हैं:
list of integers = [1, 2, 3, 8, 33] list of animals = ['dog', 'cat', 'goat'] list of names = ['John', 'Travis', 'Sheila'] list of floating numbers = [2.2, 4.5, 9.8, 10.4]
विषम सूचियों के उदाहरणों में शामिल हैं:
[2, 'cat', 34.33, 'Travis'] [2.22, 33, 'pen']
सूचियों के भीतर मानों तक पहुँचना
सूचियों के भीतर मानों तक पहुँचने के लिए, सूचियों के अंदर की वस्तुओं के सूचकांक का उपयोग किया जा सकता है। Python सूचियाँ किसी क्रमबद्ध सूची में किसी तत्व की स्थिति को संदर्भित करती हैं। उदाहरण के लिए:
list = [3, 22, 30, 5.3, 20]
- उपरोक्त सूची में पहला मान 3, का सूचकांक 0 है
- दूसरे मान 22 का सूचकांक 1 है
- तीसरे मान, 30, का सूचकांक 2 है
और इसी तरह। सूची से प्रत्येक मान तक पहुँचने के लिए, आप उपयोग करेंगे:
list[0] to access 3 list[1] to access 22 list[2] to access 30 list[3] to access 5.3 list[4] to access 20
सूची के अंतिम सदस्य तक इंडेक्स -1 का उपयोग करके भी पहुँचा जा सकता है। उदाहरण के लिए,
list[-1] = 20
Python सूची स्लाइसिंग
सूची स्लाइसिंग एक सूची के सबसेट को विभाजित करने की विधि है, और इसके लिए सूची ऑब्जेक्ट के इंडेक्स का भी उपयोग किया जाता है। उदाहरण के लिए, ऊपर दिए गए समान सूची उदाहरण का उपयोग करके;
list[:] = [3, 22, 30, 5.3, 20] (all the members of the list]; list[1:3] = [22, 30] (members of the list from index 1 to index 3, without the member at index 3); list[:4] = [3, 22, 30, 5.3] (members of the list from index 0 to index 4, without the member at index 4) list[2:-1] = [30, 5.3] (members of the list from index 2, which is the third element, to the second to the last element in the list, which is 5.3).
Python सूचियाँ ऊपरी-सीमा अनन्य हैं, और इसका मतलब है कि सूची स्लाइसिंग के दौरान अंतिम इंडेक्स को आमतौर पर अनदेखा किया जाता है। यही कारण है कि
list[2:-1] = [30, 5.3]
, और [30, 5.3, 20] नहीं। यही बात ऊपर दिए गए अन्य सभी सूची स्लाइसिंग उदाहरणों पर भी लागू होती है।
सूचियाँ अद्यतन करना
मान लीजिए कि आपके पास एक सूची है = [भौतिकी, रसायन विज्ञान, गणित], और आप सूची को [जीव विज्ञान, रसायन विज्ञान, गणित] में बदलना चाहते हैं, प्रभावी रूप से सूचकांक 0 पर सदस्य को बदलना चाहते हैं। यह उस सूचकांक को आपके इच्छित नए सदस्य को सौंपकर आसानी से किया जा सकता है।
यही कारण है,
list = [physics, chemistry, mathematics] list[0] = biology print(list)
आउटपुट: [जीव विज्ञान, रसायन विज्ञान, गणित]
यह इंडेक्स 0 (भौतिकी) पर सदस्य को आपके इच्छित नए मान (रसायन विज्ञान) से बदल देता है। यह सूची के किसी भी सदस्य या उपसमूह के लिए किया जा सकता है जिसे आप बदलना चाहते हैं।
एक और उदाहरण देते हैं; मान लीजिए कि आपके पास पूर्णांक नामक एक सूची है और इसमें संख्याएँ [2, 5, 9, 20, 27] हैं। उस सूची में 5 को 10 से बदलने के लिए, आप ऐसा कर सकते हैं:
integers = [2, 5, 9, 20, 27] integers[1] = 10 print(integers) >>> [2, 10, 9, 20, 27]
पूर्णांकों की सूची के अंतिम सदस्य, जो कि 27 है, को 30.5 जैसी मुक्त संख्या से प्रतिस्थापित करने के लिए, आप प्रयोग करेंगे:
integers = [2, 5, 9, 20, 27] integers[-1] = 30.5 print(integers) >>> [2, 5, 9, 20, 30.5]
सूची तत्वों को हटाना
3 कर रहे हैं Python सूची तत्वों को हटाने के तरीके: list.remove(), list.pop(), और del ऑपरेटर। Remove विधि हटाए जाने वाले विशेष तत्व को तर्क के रूप में लेती है जबकि pop और del हटाए जाने वाले तत्व के इंडेक्स को तर्क के रूप में लेते हैं। उदाहरण के लिए:
सूची = [3, 5, 7, 8, 9, 20]
सूची से 3 (पहला तत्व) हटाने के लिए, आप उपयोग कर सकते हैं:
- सूची.हटाएँ(3) या
- सूची.पॉप[0], या
- डेल सूची[0]
सूची से इंडेक्स 8 पर मौजूद आइटम 3 को हटाने के लिए आप निम्न का उपयोग कर सकते हैं:
- सूची.हटाएँ(8), या
- सूची.पॉप[3]
सूची तत्वों को जोड़ना
किसी सूची में तत्वों को जोड़ने के लिए, append विधि का उपयोग किया जाता है, और यह तत्व को सूची के अंत में जोड़ देता है।
उदाहरण के लिए:
list_1 = [3, 5, 7, 8, 9, 20] list_1.append(3.33) print(list_1) >>> list_1 = [3, 5, 7, 8, 9, 20, 3.33] list_1.append("cats") print(list_1) >>> list_1 = [3, 5, 7, 8, 9, 20, 3.33, "cats"]
अंतर्निहित फ़ंक्शन (विधियाँ) की सूची बनाएँ
निम्नलिखित सूची में अंतर्निहित फ़ंक्शन और विधियों की सूची उनके विवरण के साथ दी गई है:
- लंबाई(सूची): यह आउटपुट के रूप में सूची की लंबाई देता है। उदाहरण के लिए:
numbers = [2, 5, 7, 9] print(len(numbers)) >>> 4
- अधिकतम(सूची): सूची में अधिकतम मान वाला आइटम लौटाता है। उदाहरण के लिए:
numbers = [2, 5, 7, 9] print(max(numbers)) >>> 9
- न्यूनतम(सूची): सूची में न्यूनतम मान वाला आइटम लौटाता है। उदाहरण के लिए:
numbers = [2, 5, 7, 9] print(min(numbers)) >>> 2
- सूची(टपल): टपल ऑब्जेक्ट को सूची में बदलता है। उदाहरण के लिए;
animals = (cat, dog, fish, cow) print(list(animals)) >>> [cat, dog, fish, cow]
- सूची.संलग्न(तत्व): तत्व को सूची में जोड़ता है। उदाहरण के लिए;
numbers = [2, 5, 7, 9] numbers.append(15) print(numbers) >>> [2, 5, 7, 9, 15]
- सूची.पॉप(इंडेक्स): सूची से निर्दिष्ट इंडेक्स पर तत्व को हटाता है। उदाहरण के लिए;
numbers = [2, 5, 7, 9, 15] numbers.pop(2) print(numbers) >>> [2, 5, 9, 15]
- सूची.हटाएँ(तत्व): सूची से तत्व को हटाता है। उदाहरण के लिए;
values = [2, 5, 7, 9] values.remove(2) print(values) >>> [5, 7, 9]
- सूची.रिवर्स(): सूची के ऑब्जेक्ट को उलट देता है। उदाहरण के लिए;
values = [2, 5, 7, 10] values.reverse() print(values) >>> [10, 7, 5, 2]
- सूची.सूचकांक(तत्व): सूची के भीतर किसी तत्व का सूचकांक मान प्राप्त करने के लिए। उदाहरण के लिए;
animals = ['cat', 'dog', 'fish', 'cow', 'goat'] fish_index = animals.index('fish') print(fish_index) >>> 2
- योग(सूची): सूची में सभी मानों का योग प्राप्त करने के लिए, यदि मान सभी संख्याएँ (पूर्णांक या दशमलव) हैं। उदाहरण के लिए;
values = [2, 5, 10] sum_of_values = sum(values) print(sum_of_values) >>> 17
यदि सूची में कोई ऐसा तत्व है जो संख्या नहीं है, जैसे स्ट्रिंग, तो योग विधि काम नहीं करेगी। आपको यह कहते हुए एक त्रुटि मिलेगी: “त्रुटि प्रकार: +: 'int' और 'str' के लिए असमर्थित ऑपरेंड प्रकार(प्रकार)”
- list.sort(): पूर्णांकों, फ़्लोटिंग पॉइंट संख्याओं या स्ट्रिंग्स की सूची को आरोही या अवरोही क्रम में व्यवस्थित करने के लिए। उदाहरण के लिए:
values = [1, 7, 9, 3, 5] # To sort the values in ascending order: values.sort() print(values) >>> [1, 3, 5, 7, 9]
एक और उदाहरण:
values = [2, 10, 7, 14, 50] # To sort the values in descending order: values.sort(reverse = True) print(values) >>> [50, 14, 10, 7, 2]
स्ट्रिंग्स की सूची को वर्णानुक्रम में या स्ट्रिंग्स की लंबाई के अनुसार भी सॉर्ट किया जा सकता है। उदाहरण के लिए;
# to sort the list by length of the elements strings = ['cat', 'mammal', 'goat', 'is'] sort_by_alphabet = strings.sort() sort_by_length = strings.sort(key = len) print(sort_by_alphabet) print(sort_by_length) >>> ['cat', 'goat', 'is', 'mammal'] ['is', 'cat', 'goat', 'mammal']
हम 'स्ट्रिंग्स' का उपयोग करके उसी सूची को वर्णानुक्रम में क्रमबद्ध कर सकते हैं।
सूचियों के माध्यम से लूपिंग
सूचियों के माध्यम से लूपिंग किसी भी अन्य लूपिंग फ़ंक्शन की तरह ही की जा सकती है Pythonइस तरह, एक विधि को एक ही समय में सूची के कई तत्वों पर निष्पादित किया जा सकता है। उदाहरण के लिए:
सूची = [10, 20, 30, 40, 50, 60, 70].
इस सूची के सभी तत्वों को लूप में डालने के लिए, और मान लीजिए, प्रत्येक तत्व में 10 जोड़ें:
for elem in list: elem = elem + 5 print(elem) >>>>15 25 35 45 55 65 75
सूची के पहले तीन तत्वों को लूप करना, और उन सभी को हटाना;
for elem in list[:3]: list.remove(elem) >>>list = [40, 50, 60, 70]
3 के माध्यम से लूप करने के लिएrd (सूचकांक 2) को सूची के अंतिम तत्व से जोड़ें, और उन्हें new_list नामक नई सूची में जोड़ें:
new_list = [] for elem in list[2:]: new_list.append(elem) print(“New List: {}”.format(new_list)) Output: New List: [30, 40, 50, 60, 70]
इस तरह, किसी भी या विधि या फ़ंक्शन को किसी विशेष ऑपरेशन को करने के लिए सूची के सदस्यों पर लागू किया जा सकता है। आप या तो सूची के सभी सदस्यों के माध्यम से लूप कर सकते हैं, या सूची स्लाइसिंग का उपयोग करके सूची के सबसेट के माध्यम से लूप कर सकते हैं।
सूची की समझ Python
सूची समझ हैं Python ऐसे फ़ंक्शन जिनका उपयोग पहले से बनाए गए अनुक्रमों का उपयोग करके नए अनुक्रम (जैसे सूचियाँ, शब्दकोश, आदि) बनाने के लिए किया जाता है। वे लंबे लूप को कम करने में मदद करते हैं और आपके कोड को पढ़ने और बनाए रखने में आसान बनाते हैं।
उदाहरण के लिए; मान लीजिए कि आप एक सूची बनाना चाहते हैं जिसमें 1 से 9 तक की सभी संख्याओं के वर्ग शामिल हों:
list_of squares = [] for int in range(1, 10): square = int ** 2 list_of_squares.append(square) print(list_of_squares) List_of_squares using for loop: [1, 4, 9, 16, 25, 36, 49, 64, 81]
सूची समझ के साथ यही कार्य करने के लिए:
list_of_squares_2 = [int**2 for int in range(1, 10)] print('List of squares using list comprehension: {}'.format(list_of_squares_2)) Output using list comprehension: [1, 4, 9, 16, 25, 36, 49, 64, 81]
जैसा कि ऊपर देखा गया है, लिस्ट कॉम्प्रिहेंशन का उपयोग करके कोड लिखना पारंपरिक फ़ॉर लूप का उपयोग करने की तुलना में बहुत कम समय लेता है, और तेज़ भी है। यह फ़ॉर लूप के स्थान पर लिस्ट कॉम्प्रिहेंशन का उपयोग करने का सिर्फ़ एक उदाहरण है, लेकिन इसे दोहराया जा सकता है और कई जगहों पर इस्तेमाल किया जा सकता है जहाँ फ़ॉर लूप का भी उपयोग किया जा सकता है। कभी-कभी, फ़ॉर लूप का उपयोग करना बेहतर विकल्प होता है, खासकर अगर कोड जटिल है, लेकिन कई मामलों में, लिस्ट कॉम्प्रिहेंशन आपकी कोडिंग को आसान और तेज़ बना देगा।
नीचे एक तालिका दी गई है जिसमें कुछ सूची फ़ंक्शन और विधियाँ, तथा उनका विवरण दिया गया है।
अंतर्निहित कार्य
FUNCTION | वर्णन |
---|---|
गोल() | तर्क के रूप में पारित संख्या को निर्दिष्ट अंकों की संख्या तक पूर्णांकित करता है और फ़्लोटिंग पॉइंट मान लौटाता है |
न्यूनतम() | दी गई सूची का न्यूनतम तत्व लौटाएँ |
अधिकतम () | किसी दी गई सूची का अधिकतम तत्व लौटाएँ |
लेन () | सूची की लंबाई लौटाता है |
गणना करें() | यह अंतर्निहित फ़ंक्शन पुनरावृत्तीय में आइटमों के मान और अनुक्रमणिका दोनों उत्पन्न करता है, इसलिए हमें मैन्युअल रूप से गिनने की आवश्यकता नहीं है |
फ़िल्टर() | जाँचता है कि सूची का प्रत्येक तत्व सत्य है या नहीं |
lambda | एक अभिव्यक्ति जो उन स्थानों पर दिखाई दे सकती है जहां def (फ़ंक्शन बनाने के लिए) वाक्यविन्यास नहीं है, सूची लिटरल या फ़ंक्शन के कॉल तर्कों के अंदर |
नक्शा() | किसी दिए गए पुनरावृत्तीय के प्रत्येक आइटम पर दिए गए फ़ंक्शन को लागू करने के बाद परिणामों की एक सूची लौटाता है |
जमा करो() | अपने तर्क में पारित किसी विशेष फ़ंक्शन को सूची के सभी तत्वों पर लागू करने से मध्यवर्ती परिणामों वाली एक सूची वापस आती है |
जोड़() | सूची में सभी संख्याओं का योग लौटाता है |
सीएमपी() | इसका उपयोग दो सूचियों की तुलना करने के लिए किया जाता है और यदि पहली सूची दूसरी सूची से बड़ी है तो 1 लौटाता है। |
सम्मिलित करें | सूची में विशेष स्थान पर तत्व सम्मिलित करें |
सूची विधियाँ
FUNCTION | वर्णन |
---|---|
संलग्न करें() | सूची के अंत में एक नया आइटम जोड़ता है |
स्पष्ट() | सूची से सभी आइटम हटाता है |
प्रतिलिपि() | मूल सूची की एक प्रति लौटाता है |
बढ़ाना() | सूची के अंत में कई आइटम जोड़ें |
गणना () | सूची में किसी विशेष आइटम की घटनाओं की संख्या लौटाता है |
अनुक्रमणिका() | सूची के किसी विशिष्ट तत्व का सूचकांक लौटाता है |
जल्दी से आना() | सूची से किसी विशेष इंडेक्स पर आइटम को हटाता है (स्थिति के अनुसार हटाएं) |
निकालना() | सूची से निर्दिष्ट आइटम हटाता है (मान के अनुसार हटाएँ) |
Revएर्स() | इन-प्लेस रिवर्सल विधि जो सूची के तत्वों के क्रम को उलट देती है |
सारांश
- सूची बिल्कुल वैसी ही है जैसी यह सुनाई देती है, एक कंटेनर जिसमें अलग-अलग चीजें होती हैं Python वस्तुएँ, जो पूर्णांक, शब्द, मान आदि हो सकती हैं।
- Python सूचियाँ समरूप हो सकती हैं, अर्थात उनमें एक ही प्रकार की वस्तुएँ हो सकती हैं; या विषमांगी हो सकती हैं, अर्थात उनमें विभिन्न प्रकार की वस्तुएँ हो सकती हैं।
- सूचियों के भीतर मानों तक पहुँचने के लिए, सूचियों के अंदर की वस्तुओं के सूचकांक का उपयोग किया जा सकता है।
- सूची स्लाइसिंग किसी सूची के उपसमूह को विभाजित करने की विधि है, और इसके लिए सूची ऑब्जेक्ट्स के सूचकांकों का भी उपयोग किया जाता है।
- सूची तत्वों को हटाने के तीन तरीके हैं: 1)list.remove(), 2)list.pop(), और 3)del ऑपरेटर
- Append विधि का उपयोग तत्वों को जोड़ने के लिए किया जाता है। यह तत्व को सूची के अंत में जोड़ता है।
- लूपिंग विधि Python प्रोग्राम को एक ही समय में डेटा सूची के एकाधिक तत्वों पर निष्पादित किया जा सकता है।
- सूची समझ हैं Python वे फ़ंक्शन जिनका उपयोग पहले से बनाए गए अनुक्रमों का उपयोग करके नए अनुक्रम (जैसे सूचियाँ, शब्दकोश, आदि) बनाने के लिए किया जाता है।