पायथन में मानचित्र, फ़िल्टर और कार्य को कम करना: आप सभी को जानना आवश्यक है



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

पायथन कई अंतर्निहित कार्यों को प्रदान करता है जो पूर्वनिर्धारित होते हैं और केवल उन्हें कॉल करके एंड-यूज़र द्वारा उपयोग किया जा सकता है। ये कार्य न केवल प्रोग्रामर के काम को आसान बनाते हैं बल्कि एक मानक कोडिंग वातावरण भी बनाते हैं। इस लेख में, आप ऐसे तीन प्रभावशाली कार्यों के बारे में सीखेंगे, जैसे कि नक्शा (), फ़िल्टर और कम () में ।

आगे बढ़ने से पहले, सामग्री पर एक नज़र डालते हैं:





तो चलो शुरू हो जाओ। :)

पायथन में मानचित्र (), फ़िल्टर () और कम () फ़ंक्शन क्या हैं?

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



नक्शा () फ़ंक्शन:

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

वाक्य - विन्यास:

नक्शा (कार्य, पुनरावृत्तियों)



यहाँ, फ़ंक्शन एक अभिव्यक्ति को परिभाषित करता है जो बदले में पुनरावृत्तियों पर लागू होता है। मानचित्र फ़ंक्शन उपयोगकर्ता-परिभाषित कार्यों के साथ-साथ ले सकता है लंबोदर कार्य एक पैरामीटर के रूप में।

भीतर उपयोगकर्ता-परिभाषित और लैम्ब्डा कार्यों का उपयोग करना:

मानचित्र के भीतर उपयोगकर्ता-परिभाषित कार्य ():

मानचित्र () फ़ंक्शन उपयोगकर्ता-परिभाषित कार्यों को पैरामीटर के रूप में ले सकता है। इन कार्यों के पैरामीटर विशेष रूप से उपयोगकर्ता या प्रोग्रामर द्वारा निर्धारित किए जाते हैं। उदाहरण के लिए:

झांकी में मापदंडों का उपयोग कैसे करें

उदाहरण:

def newfunc (a): a * a x = map (newfunc, (1,2,3,4)) #x मैप ऑब्जेक्ट प्रिंट (x) प्रिंट (सेट (x)) है

OUTPUT:

{१६, १, ४, ९}

जैसा कि आप देख सकते हैं, x एक मैप ऑब्जेक्ट है। अगला भाग आउटपुट newfunc () को इसके पैरामीटर के रूप में लेते हुए मानचित्र फ़ंक्शन को प्रदर्शित करता है और फिर यह एक * a से सभी पुनरावृत्तियों पर लागू होता है। नतीजतन, सभी पुनरावृत्तियों के मूल्यों को खुद से गुणा किया जाता है और वापस आ जाता है।

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

उदाहरण:

def newfunc (a): a * x = मैप (newfunc, (1,2,3,4)) #x मैप ऑब्जेक्ट प्रिंट (x) प्रिंट (सूची (x)) है

OUTPUT:

[१, ४, ९, १६]

आप मापदंडों की एक से अधिक सूची भी पास कर सकते हैं। उदाहरण के लिए:

उदाहरण:

def func (a, b): a + b a = map (func, [2, 4, 5], [1,2,3]) प्रिंट (a) प्रिंट (tuple (a)) वापस करें

OUTPUT:

(३, ६, 8)

अब देखते हैं कि आप कैसे उपयोग कर सकते हैं लंबोदर कार्य नक्शे के भीतर () फ़ंक्शन।

नक्शे के भीतर लैम्ब्डा कार्य ():

लैंबडा फ़ंक्शंस ऐसे फ़ंक्शंस हैं जिनका कोई भी नाम है। इन कार्यों को अक्सर अन्य कार्यों के मापदंडों के रूप में आपूर्ति की जाती है। अब हम नक्शे () फ़ंक्शन के भीतर लंबो कार्यों को एम्बेड करने का प्रयास करते हैं। निम्नलिखित उदाहरण पर विचार करें:

उदाहरण:

tup = (५,,, २२, ९ 97, ५४, ६२,,,, २३, ,३, ६१) newtuple = tuple (नक्शा (लैम्ब्डा x: x + ३, tup)) प्रिंट (newtuple)

OUTPUT:

(8, 10, 25, 100, 57, 65, 80, 26, 76, 64)

उपरोक्त आउटपुट टपल में मौजूद प्रत्येक आइटम पर लैम्ब्डा एक्सप्रेशन (x + 3) लगाने का परिणाम है।

फ़िल्टर () फ़ंक्शन:

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

वाक्य - विन्यास:

मशीन सीखने में क्या ज्यादा है

फ़िल्टर (फ़ंक्शन, पुनरावृत्तियों)

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

उदाहरण:

def func (x): यदि x> = 3: रिटर्न x y = फ़िल्टर (func, (1,2,3,4)) प्रिंट (y) प्रिंट (सूची (y))

OUTPUT:

[३। ४]

जैसा कि आप देख सकते हैं, y फ़िल्टर ऑब्जेक्ट है और सूची उन मानों की एक सूची है जो स्थिति के लिए सही हैं (x> = 3)।

फ़िल्टर के भीतर लैम्ब्डा का उपयोग करना ():


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

उदाहरण:

y = फ़िल्टर (लंबो x: (x> = 3), (१,२,३,४)) प्रिंट (सूची (y))

OUTPUT: [३। ४]

उपरोक्त कोड पिछले फ़ंक्शन के समान आउटपुट का उत्पादन करता है।

कम () समारोह:

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

कम-नक्शा फ़िल्टर-एडुरका कम करें

इस फ़ंक्शन का सिंटैक्स निम्नानुसार है:

वाक्य - विन्यास:

कम करें (कार्य, पुनरावृत्तियों)

यहाँ फ़ंक्शन परिभाषित करता है कि पुनरावृत्तियों को लागू करने के लिए किस अभिव्यक्ति की आवश्यकता है। इस फ़ंक्शन को फंक्शंस से आयात करने की आवश्यकता है मापांक । उदाहरण के लिए:

उदाहरण:

फंक्शनलबल्स आयात से घटा घटा (लैम्ब्डा ए, बी: ए + बी, [23,21,45,98])

OUTPUT: 187

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

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

कैसे जावास्क्रिप्ट में एक चेतावनी बनाने के लिए

मानचित्र (), फ़िल्टर () और कम () कार्यों का एक दूसरे के साथ उपयोग करना:

जब आप ऐसा करते हैं, तो आंतरिक फ़ंक्शन पहले हल हो जाते हैं और फिर बाहरी फ़ंक्शन आंतरिक फ़ंक्शन के आउटपुट पर काम करते हैं।

चलिए पहले फिल्टर () फ़ंक्शन को मैप के पैरामीटर के रूप में फंक्शन पास करने का प्रयास करते हैं।

नक्शे के भीतर फ़िल्टर () का उपयोग करना:

नीचे दिए गए कोड की स्थिति के लिए पहली जांच (x> = 3) पुनरावृत्तियों के लिए सही है। फिर, मैप () फ़ंक्शन का उपयोग करके आउटपुट मैप किया जाता है।

उदाहरण:

सी = नक्शा (लैम्ब्डा एक्स: एक्स + एक्स, फिल्टर (लैम्ब्डा एक्स: (एक्स> = 3), (१,२,३,४)) प्रिंट (सूची (सी))

OUTPUT: [६,,]

यदि आप पूर्णांक से 3 से अधिक या बराबर पूर्णांक फ़िल्टर करते हैं, तो आपको परिणाम के रूप में [3,4] मिलते हैं। फिर यदि आप इसे (x + x) स्थिति का उपयोग करके मैप करते हैं, तो आपको [6,8] मिलेगा, जो आउटपुट है।

फ़िल्टर के भीतर मानचित्र () का उपयोग करना:


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

उदाहरण:

c = फ़िल्टर (लैम्ब्डा x: (x> = 3), मैप (लैम्ब्डा x: x + x, (1,2,3,4))) #lambda x: (x> = 3) प्रिंट (सूची) (c) )

OUTPUT: [४, ६, 8]

कम करने के भीतर मानचित्र () और फ़िल्टर () का उपयोग करना:

आंतरिक कार्यों का आउटपुट कम () फ़ंक्शन को आपूर्ति की गई स्थिति के अनुसार कम हो जाता है।

उदाहरण:

d = कम (लंबो x, y: x + y, मैप (lambda x: x + x, फ़िल्टर) (lambda x: (x> = 3), (1,2,3,4))) प्रिंट) (d)

OUTPUT: १४

आउटपुट [6,8] का परिणाम है जो आंतरिक मानचित्र () और फ़िल्टर () फ़ंक्शन का परिणाम है।

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

क्या आप हमसे कोई प्रश्न पूछना चाहते हैं? कृपया इसे 'मैप (), फ़िल्टर () और कम (पायथन में कार्य) ब्लॉग के टिप्पणी अनुभाग में उल्लेख करें और हम जल्द से जल्द आपके पास वापस आ जाएंगे।

अपने विभिन्न अनुप्रयोगों के साथ अजगर पर गहराई से ज्ञान प्राप्त करने के लिए, आप लाइव के लिए नामांकन कर सकते हैं 24/7 समर्थन और आजीवन पहुंच के साथ।