पायथन में सूची समझ का समय पर उपयोग आपके लिए पुनरावृत्त सूची संचालन को आसान बना सकता है। सिंगल लाइन होने के अलावा, यह अधिक पठनीय है और अधिक कुशलता से निष्पादित होता है।

हालाँकि, यदि आप इसका उपयोग करना नहीं जानते हैं, तो आप काम कर सकते हैं। यह और भी निराशाजनक हो सकता है अगर आपको नहीं पता कि इसे अपने कोड में कहां लागू करना है। यहां, हम आपको दिखाएंगे कि कुछ वास्तविक जीवन के उदाहरणों के साथ पायथन में सूची समझ का उपयोग कैसे करें।

पायथन में सूची समझ क्या है और यह कैसे काम करता है?

पायथन के साथ वस्तुओं की एक सूची बनाना आसान है। हालाँकि, कार्य थोड़ा थकाऊ हो सकता है जब आपको गणितीय या स्ट्रिंग संचालन से मूल्यों या वस्तुओं की सूची तैयार करने की आवश्यकता होती है। सूची का उपयोग करते समय यह समझ में आ सकती है।

सूची समझ का उपयोग करने का एक फायदा यह है कि आप एक ही सूची में कई ऑपरेशन कर सकते हैं।

इसके विपरीत, यह नई वस्तुओं का निर्माण करता है और उन्हें एक खाली सूची में जोड़ देता है जो यह स्वचालित रूप से घोषित करता है। इसलिए मैन्युअल रूप से एक खाली सूची बनाने और उसके साथ संलग्न करने के बजाय के लिये पाश, पायथन की सूची की समझ आपको नई सूची के माध्यम से कैसे आती है, इसके बारे में परेशान किए बिना आपको स्वचालित रूप से ऐसा करने देता है।

instagram viewer

"लिस्ट कॉम्प्रिहेंशन" शब्द इस तथ्य से आता है कि सभी ऑपरेशन एक नामित चर को सौंपे गए पायथन सूची में हैं। जैसा कि हमने पहले कहा था, यह आपको एक ही लाइन के कोड में विशिष्ट कार्य करने की सुविधा देता है। यह तब आउटपुट को एक नई सूची में जोड़ता है।

अंत में, आप अन्य उद्देश्यों के लिए सूची समझ के आउटपुट का भी उपयोग कर सकते हैं। ऐसा इसलिए क्योंकि यह अलग-अलग वेरिएबल्स में एक्सप्रेशन को स्टैक करता है। तो आप उन्हें बाद में संदर्भित कर सकते हैं।

उदाहरण के लिए, आप हो सकते हैं BeautifulSoup के साथ एक वेबसाइट स्क्रैपिंग. मान लें कि आप वेबसाइट से सभी वस्तुओं और उनकी कीमतों का नाम प्राप्त करने का इरादा रखते हैं।

फिर आप स्क्रैप किए गए डेटा को एक CSV या एक Excel फ़ाइल में रखने का निर्णय लेते हैं। आदर्श अभ्यास सभी वस्तुओं और उनके मूल्यों के नाम को परिमार्जन करना और दोनों को अलग-अलग स्तंभों में रखना है। हालाँकि, सूची की समझ का उपयोग करते हुए, उस स्थिति में, यह सुनिश्चित करता है कि आपके पास समर्पित चर में स्क्रैप किया गया डेटा है। आप बाद में ऐसे वेरिएबल्स को पायथन डेटाफ्रेम में बदल सकते हैं।

नीचे दिए गए उदाहरण को देखें:

उत्पाद = [i.text में i के लिए bs.find_all ('नाम टैग')]
मूल्य = [i.text में i के लिए bs.find_all ('मूल्य टैग')]

एक बार जब आप लूप किए गए चर प्राप्त कर लेते हैं, तो आप उन्हें पायथन के पंडों का उपयोग करके डेटाफ़्रेम में अलग कॉलम में रख सकते हैं।

पायथन में एक सूची समझ बनाने और उपयोग करने का तरीका

के लिये एक सूची समझ में लूप एक आवश्यक पुनरावृत्ति है। आमतौर पर, पायथन में एक सूची समझ इस प्रारूप को लेती है:

बोधगम्यता = [सूची में वस्तुओं के लिए अभिव्यक्ति]

मुद्रण समझ में आने योग्य सूची के रूप में उपरोक्त कोड के परिणाम को आउटपुट करता है।

हालांकि, एक खुले के साथ एक सूची समझ को भ्रमित न करने के लिए सावधान रहें के लिये पाश।

उदाहरण के लिए, आइए लूप के लिए एक खुले का उपयोग करें 1 और 30 के बीच तीन के सभी गुणकों की सूची प्राप्त करने के लिए:

myList = []
मैं सीमा में (1, 11):
myList.append (i * 3)
प्रिंट करें (myList)
आउटपुट: [३, ६, ९, १२, १५, १ 6, २१, २४, २ 6, ३०]

दोनों की तुलना करने के लिए, सूची बोध का उपयोग करते हुए समान कार्य करें:

multiplesOf3 = [i * 3 के लिए मैं रेंज में (1, 11)]
प्रिंट
आउटपुट = [३, ६, ९, १२, १५, १ 6, २१, २४, २ 6, ३०]

आप सशर्त बयानों के साथ एक सूची समझ का भी उपयोग कर सकते हैं। नीचे दिया गया उदाहरण कोड 1 और 10 के बीच सभी विषम संख्याओं को प्रिंट करता है:

विषमांक = [i के लिए मैं सीमा में (1, 11) यदि मैं% 2 == 2 नहीं हूं]
प्रिंट (विषम)
आउटपुट = [१, ३, ५, 3, ९]

अब, ऊपर दिए गए कोड को एक ओपन का उपयोग करके फिर से लिखते हैं के लिये पाश:

myList = []
मैं सीमा में (1, 11):
यदि मैं नहीं% 2 == 0:
myList.append (i)
प्रिंट करें (myList)
आउटपुट: [१, ३, ५, 3, ९]

सम्बंधित: पायथन में एक सूची कैसे जोड़ें

यदि कोई कथन कथन करता है तो एक सूची समझ भी स्वीकार नहीं की जाती है:

विषमांक = [मैं सीमा में (१, ११) के लिए अगर मैं% २ == ० नहीं तो मैं प्रिंट (विषम)
आउटपुट: [१, ३]

यह एक नेस्टेड भी लेता है के लिये पाश:

someNums = [[i * 2 फॉर आई फॉर रेंज (1, 3)] फॉर _ में रेंज (4)]
प्रिंट (कुछ नाम)

आप एक सादे नेस्टेड भी हो सकते हैं के लिये एक सूची समझ में पाश:

someNums = [i * 2 के लिए मैं रेंज में (1, 3) k में रेंज के लिए (4)]

आप पायथन सूची समझ के साथ तार में हेरफेर कर सकते हैं। चलो नीचे एक शब्द काउंटर समझ पर एक नज़र है:

शब्द = ["यह एक अजगर सूची समझ ट्यूटोरियल है"]
wordCounter = [i.count ('' ') + 1 शब्द में i के लिए]
प्रिंट (शब्द मुठभेड़)
आउटपुट: 7

एक सूची समझ भी एक फ़ंक्शन को स्वीकार कर सकती है जो एक विशिष्ट ऑपरेशन करता है। आइए एक गुणक फ़ंक्शन को सम्मिलित करते हैं जो सूची बोध में भी नंबर प्राप्त करता है यह देखने के लिए कि यह कैसे काम करता है:

संख्या = [४, 7, 7, १५, १ 7, १०]
def गुणक (n):
बहु = n * २
कई लौटें
एकाधिक संख्या = [गुणक (i) संख्या में i के लिए अगर मैं% 2 == 0]
प्रिंट (एकाधिक)
आउटपुट: [16, १६, २०]

आप अभी भी किसी फ़ंक्शन में बिना समझ का उपयोग किए ऊपर कोड लिख सकते हैं। लेकिन एक सूची समझ उपयोगी है जब आपको कई पुनरावृत्तियों को करने और उनमें से प्रत्येक को अलग-अलग चर में रखने की आवश्यकता होती है।

उदाहरण के लिए, आप एक और ऑपरेशन कर सकते हैं एन और इसके लिए एक समर्पित चर है। आइए ऊपर विषमता को संशोधित करें ताकि विषम संख्याओं से भी संख्या उत्पन्न हो सके:

मल्टेनएवरफ्रॉम =
प्रिंट करें (multipleEvenFromOdds)
आउटपुट: [१४, ३०, ३४]

शब्दकोश और सेट समझ

एक सूची समझ के अलावा, पायथन एक शब्दकोश और एक सेट समझ कार्यक्षमता भी प्रदान करता है।

नीचे दिए गए उदाहरण शब्दकोश समझ पर एक नज़र डालें कि यह कैसे काम करता है:

संगत = {i: i * 2 के लिए मैं रेंज में (10) यदि मैं% 2 == 0} नहीं हूं
प्रिंट (पार)
आउटपुट: {१: २, ३: ६, ५: १०,,: १४, ९: १ 1}

उपरोक्त कोड 1 और 9 के बीच संख्याओं की सूची के माध्यम से पुनरावृत्त करता है और उन्हें कुंजी बनाता है। यह तब पायथन को प्रत्येक कुंजी को दो से गुणा करने के लिए कहता है। अंत में, यह परिणामी सरणी में प्रत्येक कुंजी के लिए संबंधित मानों के रूप में उस ऑपरेशन के परिणामों को प्रस्तुत करता है।

सम्बंधित: पायथॉन में एरर्स और लिस्ट कैसे काम करते हैं

एक सेट कॉम्प्रिहेंशन एक लिस्ट कॉम्प्रिहेंशन के समान है। यहाँ एक समझ की मिसाल है:

संख्या = {i ** (2) मैं रेंज में (10) के लिए अगर मैं% 4 == 0}
प्रिंट (संख्या)
आउटपुट: {0, 16, 64}

हालाँकि, सूची की समझ के विपरीत, सेट की समझ डुप्लिकेट को हटा देती है:

nums = {i for i for रेंज (20) यदि i% 2 == 1 k में रेंज के लिए (10) यदि k% 2 = 1}
प्रिंट (अंक)
आउटपुट: {1, 3, 5, 7, 9, 11, 13, 15, 17, 19}

आप एक सूची समझ का उपयोग करके उपरोक्त कोड की कोशिश कर सकते हैं कि वे कैसे भिन्न होते हैं।

क्या आप हर बार सूची समझ का उपयोग कर सकते हैं?

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

सूची समझ का एक उद्देश्य आपके कोड को सरल बनाना और इसे अधिक पठनीय बनाना है। इसलिए, सुनिश्चित करें कि आप इससे निपटने के दौरान जटिलता से बच सकते हैं। उदाहरण के लिए, एक लंबा अजगर समझ पढ़ने के लिए जटिल बन सकता है। वह अपने उद्देश्य को पराजित करता है।

ईमेल
पायथन सूची समझ का उपयोग कैसे करें (और जब उनका उपयोग न करें)

यहां आपको पाइथन की इस अद्भुत विशेषता का उपयोग करने के बारे में जानने की जरूरत है जो आपकी उत्पादकता और कोड पठनीयता को बढ़ाएगा।

संबंधित विषय
  • प्रोग्रामिंग
  • अजगर
लेखक के बारे में
इदोवु ओमीसोला (55 लेख प्रकाशित)

Idowu कुछ भी स्मार्ट तकनीक और उत्पादकता के बारे में भावुक है। अपने खाली समय में, वह कोडिंग के साथ खेलता है और जब वह ऊब जाता है, तो शतरंज खेलने के लिए स्विच करता है, लेकिन वह एक बार में एक बार दिनचर्या से अलग होना भी पसंद करता है। आधुनिक तकनीक के इर्द-गिर्द लोगों को दिखाने का उनका जुनून उन्हें और अधिक लिखने के लिए प्रेरित करता है।

Idowu Omisola से अधिक

हमारे न्यूज़लेटर की सदस्यता लें

टेक टिप्स, रिव्यू, फ्री ईबुक और एक्सक्लूसिव डील्स के लिए हमारे न्यूज़लेटर से जुड़ें!

एक और कदम…!

कृपया हमें आपके द्वारा भेजे गए ईमेल में अपने ईमेल पते की पुष्टि करें।

.