Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Python

पायथन सूची समझ और टुकड़ा करना?

इस खंड में, हम पायथन लिस्ट स्लाइसिंग और लिस्ट कॉम्प्रिहेंशन को समझने जा रहे हैं।

लिस्टिंग स्लाइसिंग क्या है?

जैसा कि नाम से पता चलता है, स्लाइस का अर्थ है - किसी चीज को छोटे टुकड़ों (स्लाइस) में काटना। लिस्ट स्लाइसिंग एक मूल सूची से सूची के एक हिस्से को निकालने की प्रक्रिया है। लिस्ट स्लाइसिंग में हम जो चाहते हैं उसके आधार पर एक सूची काटने जा रहे हैं (जैसे कि कहां से शुरू करें, रुकें और किस इंक्रीमेंट से स्लाइस करें)।

सूची समझ क्या है?

सूची की समझ मौजूदा सूची के आधार पर एक सूची तैयार कर रही है। यह मौजूदा सूचियों के आधार पर नई सूचियां परिभाषित करने और बनाने का एक शानदार तरीका प्रदान करता है।

सूची स्लाइसिंग

जैसा कि हम एक सूची को स्लाइस करने जा रहे हैं, तो चलिए पहले एक सूची बनाते हैं-

>>> mylist = ["Which ", "Language ", "To ", "Choose ", "Difficult, ", "Python ",
   "Java ", "Kotlin ", "Many more"]

सूची को पीछे की ओर अनुक्रमित किया जा सकता है, -1 (अंतिम तत्व) से शुरू होकर -1 से बढ़ रहा है। तो -1 अंतिम तत्व होगा, -2 दूसरा अंतिम तत्व होगा।

>>> mylist_slice1 = mylist[0: -1:2]
>>> mylist_slice1
['Which ', 'To ', 'Difficult, ', 'Java ']

किसी सूची को काटते समय, हमें पहले अपनी सूची को कॉल करना चाहिए (हमारे मामले में mylist) उसके बाद स्लाइसिंग के लिए हमारी आवश्यकताएं। इन्हें कोष्ठक [] में संलग्न किया जाना चाहिए। तर्क हमें [] के अंदर पारित करने की आवश्यकता हो सकती है -

  • पहला तर्क, टुकड़ा करना शुरू करने के लिए अनुक्रमणिका।
  • दूसरा तर्क, टुकड़ा करना बंद करने के लिए अनुक्रमणिका।
  • तीसरा तर्क, (वैकल्पिक) द्वारा टुकड़ा करने के लिए चरण/वृद्धि।

तो अंत में, यह कुछ इस तरह दिखेगा -

mylist[START: STOP:STEP]
>>> mylist_slice2 = mylist[1:-1:2]
>>> mylist_slice2
['Language ', 'Choose ', 'Python ', 'Kotlin ']

सूची समझ

जैसा कि आप मेरे अब (ऊपर से) जानते हैं, सूची समझ मौजूदा सूची से एक नई सूची तैयार कर रही है। तो चलिए पहले एक सूची (मूल सूची) बनाते हैं, मैं हमारी सूची समझ के लिए संख्याओं की अस्थायी सूची बनाने के लिए रेंज () फ़ंक्शन का उपयोग कर रहा हूं।

>>> mylist1 = [x for x in range(0, 40)]
>>> mylist1
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
    27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39]
>>>
>>> mylist2 = [x for x in range(0,41) if x%2 == 0]
>>> mylist2
[0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40]

आइए समझते हैं कि ऊपर क्या चल रहा है, हम पहले एक अस्थायी चर नाम "x" बनाते हैं, उसके बाद लूप के लिए जो कोष्ठक के अंदर 0 से 40 की सीमा के माध्यम से पुनरावृत्त होता है और जब हम इसे निष्पादित करते हैं, तो यह 0 से 39 तक की संख्याओं की एक सूची बनाता है। .फिर हम एक और लिस्ट बनाते हैं और उसमें कंडीशन जोड़ते हैं, कंडीशन "if x%2 ==0" थी। इसका मतलब है कि हम केवल सम संख्याओं की तलाश कर रहे हैं।

आइए सूची समझने के लिए स्ट्रिंग्स का उपयोग करके एक और सूची बनाएं।

>>> strlist = ["This", "Is", "A" , "List" , "Of", "Strings", "For", "List", "Comprehension"]
>>> print([x.lower() for x in strlist])
['this', 'is', 'a', 'list', 'of', 'strings', 'for', 'list', 'comprehension']

ऊपर हमारे पास एक स्ट्रिंग सूची है, और हमने सूची समझ का उपयोग करके सूची आइटम को कम-केस किया है।


  1. पायथन सूची समझ?

    पायथन एक सूची को दूसरे से प्राप्त करने के लिए कॉम्पैक्ट सिंटैक्स प्रदान करता है। इन अभिव्यक्तियों को सूची समझ कहा जाता है। सूची की समझ पायथन में सबसे शक्तिशाली उपकरणों में से एक है। पायथन की सूची समझ कार्यात्मक प्रोग्रामिंग अवधारणाओं के लिए भाषा के समर्थन का एक उदाहरण है। पायथन सूची की समझ किसी फ़ं

  1. कोशिश करें और पायथन को छोड़कर

    पायथन में अपवाद हैंडलिंग का उपयोग करने के लिए, हमें पहले क्लॉज को छोड़कर सभी को पकड़ने की जरूरत है। पायथन अपवादों को पकड़ने के लिए कोशिश और छोड़कर कीवर्ड प्रदान करता है। कोशिश ब्लॉक कोड स्टेटमेंट द्वारा स्टेटमेंट निष्पादित किया जाएगा। हालांकि, यदि कोई अपवाद होता है, तो शेष कोशिश कोड निष्पादित नहीं

  1. पायथन का उपयोग करके एक सरणी सूची में 0 और 1 को अलग करें?

    लिस्ट कॉम्प्रिहेंशन पायथन में एक लोकप्रिय तकनीक है। यहां हम इस तकनीक का उपयोग करते हैं। हम एक उपयोगकर्ता इनपुट सरणी बनाते हैं और सरणी तत्व यादृच्छिक क्रम में 0 और 1 का होना चाहिए। फिर 0 को बाईं ओर और 1 को दाईं ओर अलग करें। हम सरणी को पार करते हैं और दो अलग-अलग सूची को अलग करते हैं, एक में 0 होता है