अजगर नक्शा

| | | | | | | | | | | | | | | | | | |

पायथन मैप () फ़ंक्शन संग्रह के प्रत्येक तत्व, जैसे सूची या सेट पर एक फ़ंक्शन निष्पादित करता है। मैप () फ़ंक्शन एक फ़ंक्शन और एक ऑब्जेक्ट को लागू करने के लिए स्वीकार करता है जिस पर फ़ंक्शन तर्क के रूप में काम करेगा।

पायथन में आइटम की सूची के साथ काम करते समय, आप एक विशिष्ट प्रदर्शन करना चाह सकते हैं उनमें से प्रत्येक आइटम पर कार्य करता है।

वह जगह है जहां पायथन का अंतर्निहित मानचित्र () फ़ंक्शन आता है। पायथन का मानचित्र फ़ंक्शन एक पुनरावृत्त वस्तु के सभी तत्वों पर एक फ़ंक्शन निष्पादित करता है, जैसे कि एक सूची, और नक्शा लौटाता है ऑब्जेक्ट्स का .

इस ट्यूटोरियल में, उदाहरणों की एक श्रृंखला का उपयोग करते हुए, हम चर्चा करते हैं कि पायथन में मैप () फ़ंक्शन का उपयोग कैसे करें।

python Iterable ऑब्जेक्ट

पुनरावृति ऑब्जेक्ट वे तत्व हैं जिनमें गणनीय संख्या में मान होते हैं और जिन्हें ट्रैवर्स किया जा सकता है। पायथन में सूचियाँ, शब्दकोश, टुपल्स और सेट सभी चलने योग्य हैं क्योंकि उनमें कई मान हो सकते हैं और उन्हें ट्रेस किया जा सकता है।

मान लें कि आपके पास उन छात्रों के नामों की एक सूची है जिन्हें आप याद रखना चाहते हैं। इन अतिरिक्त नामों को संग्रहीत करने के बजाय Python चर , आप मानों को संग्रहीत करने के लिए एक सरणी घोषित कर सकते हैं:

हमारे <कोड>छात्र वेरिएबल में एक सूची होती है, जो एक चलने योग्य वस्तु है। इसका मतलब है कि हम सूची में आइटम को पार कर सकते हैं। फ़ंक्शन

पायथन मैप फ़ंक्शन सिंटैक्स

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

पायथन कार्ड () एक उच्च ऑर्डर फ़ंक्शन है जिसे लागू करने के लिए उपयोग किया जा सकता है एक चलने योग्य वस्तु में कई तत्वों के लिए एक विशिष्ट कार्य। पायथन मैप () फ़ंक्शन का सिंटैक्स इस प्रकार है:

पहला तर्क जिसे map () फंक्शन स्वीकार करता है वह है फंक्शन। यह वह कार्य है जो पुनरावृत्तियों के प्रत्येक तत्व पर किया जाएगा। चलने योग्य वह वस्तु है जिसका मिलान किया जाएगा, जैसे सूची, टपल, शब्दकोश, या सेट

पायथन में मैप फ़ंक्शन का उपयोग कैसे करें

मान लीजिए कि आप किसी ऐसे स्कूल के व्यवस्थापक हैं जिसे छात्रों की पूरी सूची बनाने का कार्य सौंपा गया है।

हम एक प्रिंट करने का निर्णय लेते हैं। उनके नाम के आगे सूचीबद्ध प्रत्येक छात्र की कक्षा के साथ छात्र नामों की सूची। यदि दो अलग-अलग कक्षाओं के दो छात्रों का नाम एक ही है, तो यह भ्रम की स्थिति से बच जाएगा।

यह फ़ंक्शन का एक आदर्श अनुप्रयोग है। हमारे पास एक पुनरावर्तनीय है कि हम एक कार्य करना चाहते हैं। समारोह एक छात्र के नाम को उस ग्रेड के साथ मिला देगा जो वे हैं। यहां एक प्रोग्राम है जिसका उपयोग छात्र नामों को अपने स्वयं के पायथन मानचित्र वर्ग () स्तर के साथ मर्ज करने के लिए किया जा सकता है:

पहली दो पंक्तियों में, हम एक पायथन फ़ंक्शन घोषित करते हैं जिसे mergeNamesAndGrades कहा जाता है। यह फ़ंक्शन प्रत्येक छात्र के ग्रेड 1 नाम के साथ जुड़ता है।

इसलिए अगली पंक्ति में हम अपने स्कूल में छात्रों की सूची को परिभाषित करते हैं। हमारी सूची में पांच छात्र हैं।

मानचित्र () फ़ंक्शन student_roster पायथन चर । मानचित्र () फ़ंक्शन दो तर्क लेता है: फ़ंक्शन (इस मामले में, mergeNamesAndGra des) और पुनरावर्तनीय ऑब्जेक्ट (छात्र)। सूची।

पायथन मानचित्र को सूची में बदलें

हालांकि, हमारा कार्यक्रम अभी पूरा नहीं हुआ है। मैप () फ़ंक्शन एक मैप की गई वस्तु देता है, न कि हमारी पूरी सूची। अगर हम इस समय अपना student_roster वेरिएबल प्रिंट करते हैं, तो हमारा कोड इस तरह से एक मेल खाने वाली वस्तु लौटाएगा:

यह आउटपुट इसलिए उत्पन्न किया गया था क्योंकि मैप () फ़ंक्शन सूची के बजाय अपना स्वयं का कस्टम ऑब्जेक्ट देता है। इसलिए यदि हम छात्रों के नामों की सूची को प्रिंट करना चाहते हैं, तो हमें अपने student_roster चर को एक सूची में बदलना होगा। यह कोड हम इस क्रिया को करने के लिए उपयोग कर सकते हैं:

हमारा कोड सूची देता है Python :

आइए एक और उदाहरण देखते हैं। मान लीजिए कि हम अपनी छात्र सूची के लिए प्रत्येक छात्र के नाम और ग्रेड को अपर केस में बदलना चाहते हैं। हम छात्र के नाम और ग्रेड के मामलों को बदलने के लिए निम्नलिखित कोड का उपयोग कर सकते हैं: name.upper () student_roster = [`लुसी फर्स्ट ग्रेड`, `बिल फर्स्ट ग्रेड`, `ग्राहम फर्स्ट ग्रेड`, `टॉमी फर्स्ट ग्रेड`, `लेस्ली फर्स्ट ग्रेड`] = final_student_roster कार्ड (चेंजकेस, स्टूडेंट_रोस्टर) प्रिंट (सूची (सूची) final_student_roster))

हमारा कोड एक सूची देता है जिसे हम पुनरावृति कर सकते हैं:

इस उदाहरण में, हमारे पास है changeCase नामक एक फ़ंक्शन को परिभाषित किया। इस फ़ंक्शन ने प्रत्येक छात्र के नाम को अपर केस में बदल दिया। हमने प्रत्येक नाम के केस को बदलने के लिए पायथन ऊपरी () फ़ंक्शन का उपयोग किया

हमारे कार्यक्रम ने map () फ़ंक्शन का उपयोग changeCase () हमारे पुनरावृत्तियों में प्रत्येक वस्तु पर student_roster। अंत में, हमारे कार्यक्रम ने बड़े अक्षरों में छात्र नामों की संशोधित सूची लौटा दी। फ़ंक्शन

लैम्ब्डा के साथ पायथन मानचित्र

पायथन मानचित्र () फ़ंक्शन का उपयोग हमारे अधिक कुशल कोड को प्रस्तुत करने के लिए lambda फ़ंक्शन के साथ किया जा सकता है। पिछले उदाहरणों में हमने अपने पुनरावृत्तियों को किसी तरह से संशोधित करने के लिए एक नया फ़ंक्शन घोषित किया था .

लेकिन अगर हम केवल एक बार चलने योग्य वस्तु पर एक क्रिया करना चाहते हैं, तो एक नया फ़ंक्शन घोषित करने की कोई आवश्यकता नहीं है। इसके बजाय, हम लैम्ब्डा फ़ंक्शन पायथन का उपयोग कर सकते हैं, जो एक छोटा अनाम फ़ंक्शन है

लैम्ब्डा फंक्शन्स का उपयोग मैप () के साथ छोटे कार्यों के लिए किया जा सकता है जिसमें मैं एक नए फ़ंक्शन को परिभाषित नहीं करना चाहता।

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

यहां एक उदाहरण लैम्ब्डा है जिसका उपयोग छात्रों के नामों की सूची खींचने के लिए किया जाता है, जैसा कि हमने किया है - यह।

< डिव क्लास = "wp-ब्लॉक -कोडमिरर ब्लॉक्स-कोड-ब्लॉक कोड-ब्लॉक">
student_roster = [`लुसी फर्स्ट ग्रेड`, `बिल फर्स्ट ग्रेड`, `ग्राहम फर्स्ट ग्रेड`, `टॉमी फर्स्ट ग्रेड`,` लेस्ली फर्स्ट ग्रेड `] final_student_roster = कार्ड (लैम्ब्डा फ्रॉम: s.upper (), student_roster) इंप्रेशन (लिस्ट (फाइनल_स्टूडेंट_रोस्टर)) 

हमने ए घोषित नहीं किया। इसके बजाय हमारे छात्रों के नामों को बड़ा करने के लिए नया फ़ंक्शन, हमने lambda: s.upper () का उपयोग किया, जो एक छोटा अनाम फ़ंक्शन है जो आपको हमारे छात्रों के बड़े नामों को परिवर्तित करने की अनुमति देता है।

हमारा कोड निम्नलिखित लौटाता है:

निष्कर्ष

पायथन मानचित्र ( ) को लागू करने के लिए उपयोग किया जा सकता है एक चलने योग्य वस्तु के सभी तत्वों के लिए एक विशिष्ट कार्य। उदाहरण के लिए, आप स्ट्रिंग की सूची में मामलों को अपरकेस में बदलने के लिए मानचित्र () का उपयोग कर सकते हैं। आप संख्याओं की सूची को एक से गुणा करने के लिए कार्ड () फ़ंक्शन का भी उपयोग कर सकते हैं निश्चित राशि

इस ट्यूटोरियल में, हमने चर्चा की है कि पाइथॉन में मैप () का उपयोग कैसे किया जाता है ताकि एक फंक्शन को पुनरावर्तनीय ऑब्जेक्ट के अंदर सभी तत्वों पर लागू किया जा सके। आप मैप ()< के साथ पायथन के लैम्ब्डा फंक्शन का उपयोग कर सकते हैं। /em> अधिक कुशल कोड बनाने के लिए।

अब आप Python के ज्ञान से लैस हैं, जिसका आपको उपयोग शुरू करने की आवश्यकता है em>नक्शा () बॉस की तरह।