एक पायथन सूची में वस्तुओं के मूल्य किसी भी क्रमबद्ध क्रम में जरूरी नहीं हैं। इससे भी अधिक ऐसी स्थिति हो सकती है जब हम केवल एक विशिष्ट मूल्य से अधिक कुछ मूल्यों में रुचि रखते हैं। इस लेख में हम देखेंगे कि हम कैसे प्राप्त कर सकते हैं
गणना का उपयोग करना
गणना का उपयोग करके हम सूची में तत्वों का सूचकांक और मूल्य दोनों प्राप्त करते हैं। फिर हम केवल पहले तत्व को प्राप्त करने के लिए बड़ी से अधिक शर्त लागू करते हैं जहां शर्त संतुष्ट होती है। अगला फ़ंक्शन प्रत्येक सूची तत्व के माध्यम से एक-एक करके जाता है।
उदाहरण
List = [21,10,24,40.5,11] print("Given list: " + str(List)) #Using next() + enumerate() result = next(k for k, value in enumerate(List) if value > 25)print("Index is: ",result)
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं
आउटपुट
Given list: [21, 10, 24, 40.5, 11] Index is: 3
फ़िल्टर और लैम्ब्डा फ़ंक्शंस का उपयोग करना
अगले उदाहरण में हम प्रत्येक इंडेक्स पर दिए गए मान की तुलना करने के लिए लैम्ब्डा फ़ंक्शन लेते हैं और फिर उन लोगों को फ़िल्टर करते हैं जो आवश्यक शर्त को पूरा करते हैं। आवश्यक शर्तों को पूरा करने वाले तत्वों की सूची से, हम अपने उत्तर के लिए इंडेक्स 0 पर पहला तत्व चुनते हैं।
उदाहरण
List = [21,10,24,40.5,11] print("Given list: " + str(List)) #Using filter() + lambda result = list(filter(lambda k: k > 25, List))[0] print("Index is: ",List.index(result))
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं
आउटपुट
Given list: [21, 10, 24, 40.5, 11] Index is: 3
मानचित्र और लैम्ब्डा का उपयोग करना
अगले उदाहरण में हम एक समान दृष्टिकोण लेते हैं लेकिन फ़िल्टर के बजाय मानचित्र का उपयोग करते हैं। प्रत्येक तत्व के माध्यम से लूप करने के लिए मानचित्र फ़ंक्शन का उपयोग किया जाता है। जब भी शर्त सही हो जाती है कि इंडेक्स कैप्चर हो जाता है।
उदाहरण
List = [21,10,24,40.5,11] print("Given list: " + str(List)) result = list(map(lambda k: k > 25, List)).index(True) print("Index is: ",(result))
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं
आउटपुट
Given list: [21, 10, 24, 40.5, 11] Index is: 3