Python Academy · पाठ

सूची कॉम्प्रिहेंशन

शर्तों वाले कॉम्प्रिहेंशन सिंटैक्स से संक्षिप्त रूप में सूचियाँ बनाएँ।

पाठ 1, कुल 4 में से14 चरण

सूची कॉम्प्रिहेंशन, CoddyKit पर Python Academy का एक निःशुल्क पाठ है। यह 4 में से 1वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह Python Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Python Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

परिचय

सूची कॉम्प्रिहेंशन, इटरेबल से एक ही पठनीय अभिव्यक्ति में नई सूचियाँ बनाते हैं और सामान्य for-लूप पैटर्न का स्थान लेते हैं।

मूल वाक्यविन्यास

[expression for item in iterable] मूल रूप है। [x*2 for x in range(5)] से [0,2,4,6,8] प्राप्त होता है।
doubled = [x*2 for x in range(5)]
print(doubled)

शर्त के साथ

[x for x in range(10) if x%2==0] केवल सम संख्याएँ चुनता है। if खंड for खंड के बाद आता है।
evens = [x for x in range(10) if x % 2 == 0]
print(evens)

स्ट्रिंग का रूपांतरण

[word.upper() for word in words] प्रत्येक स्ट्रिंग पर upper() लागू करता है। यह किसी भी इटरेबल के साथ काम करता है।
words = ['hello', 'world']
print([w.upper() for w in words])

नेस्टेड कॉम्प्रिहेंशन

[x for row in matrix for x in row] एक सपाट नेस्टेड कॉम्प्रिहेंशन है (इसे बाएँ से दाएँ पढ़ा जाता है और बाहरी लूप पहले चलता है)।
matrix = [[1,2,3],[4,5,6]]
flat = [x for row in matrix for x in row]
print(flat)

अभिव्यक्ति में if/else

[x if x>0 else 0 for x in lst] अभिव्यक्ति वाले भाग में टर्नरी का उपयोग करता है (for से पहले), बाद में नहीं।
lst = [-1, 2, -3, 4]
clipped = [x if x > 0 else 0 for x in lst]
print(clipped)

कॉम्प्रिहेंशन बनाम map/filter

[f(x) for x in it if cond(x)] का परिणाम list(map(f, filter(cond, it))) के बराबर है, लेकिन यह अधिक पठनीय है।
nums = range(10)
result = [x**2 for x in nums if x%2==0]
print(result)

कॉम्प्रिहेंशन से समतल करना

नेस्टिंग के 2 या अधिक स्तरों के लिए कॉम्प्रिहेंशन से संरचना समतल की जा सकती है: [[1,2],[3,4]] → [1,2,3,4]।
nested = [[1,2],[3,4],[5]]
flat = [x for sub in nested for x in sub]
print(flat)

enumerate() के साथ कॉम्प्रिहेंशन

[(i, x) for i, x in enumerate(lst)] से इंडेक्स-मान युग्मों की सूची प्राप्त होती है।
colors = ['red', 'green', 'blue']
indexed = [(i, c) for i, c in enumerate(colors)]
print(indexed)

zip() के साथ कॉम्प्रिहेंशन

[a+b for a, b in zip(lst1, lst2)] दो सूचियों के संगत तत्वों को जोड़ता है।
a = [1, 2, 3]
b = [10, 20, 30]
print([x+y for x,y in zip(a,b)])

कॉम्प्रिहेंशन का उपयोग कब न करें

यदि तर्क जटिल हो या उसके लिए साइड इफ़ेक्ट आवश्यक हों, तो सामान्य for लूप का उपयोग कीजिए। कॉम्प्रिहेंशन एक-पंक्ति वाले और सरल रहने चाहिए।
# Too complex for comprehension:
result = []
for x in range(10):
    if x > 5:
        result.append(x * x)
print(result)

त्वरित जाँच

किसी सूची कॉम्प्रिहेंशन में शर्त और टर्नरी दोनों हों, तो टर्नरी कहाँ रखी जाती है?

पुनरावलोकन

सूची कॉम्प्रिहेंशन: [expr for x in it if cond]। अभिव्यक्ति में टर्नरी: [x if cond else y for x in it]। सपाट और पठनीय रूपांतरणों के लिए इनका उपयोग कीजिए।

आगे बढ़िए

बहुत अच्छा! अपने कौशल को और मजबूत करने के लिए अगले पाठ पर जाइए।
शुरुआत निःशुल्क

एआई शिक्षक के साथ Python सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
76
पाठ
320

अक्सर पूछे जाने वाले प्रश्न

क्या “सूची कॉम्प्रिहेंशन” पाठ निःशुल्क है?

हाँ—“सूची कॉम्प्रिहेंशन” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और Python Academy पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। Python Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“सूची कॉम्प्रिहेंशन” में मैं क्या सीखूँगा?

शर्तों वाले कॉम्प्रिहेंशन सिंटैक्स से संक्षिप्त रूप में सूचियाँ बनाएँ। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Python Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या Python Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Python Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 1वाँ पाठ है।

“सूची कॉम्प्रिहेंशन” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस Python Academy पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर Python Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. सूची कॉम्प्रिहेंशन
  2. सेट और डिक्शनरी कॉम्प्रिहेंशन
  3. जनरेटर एक्सप्रेशन
  4. yield कीवर्ड
← Python Academy पर वापस जाएँ