शीर्ष 3 पायथन की विशेषताएं जिनके बारे में आप नहीं जानते (शायद)

नमस्कार, हेब्र! मैं आपको Dario Radečeć द्वारा "शीर्ष 3 पायथन फ़ंक्शंस यू नो नॉट अबाउट (संभवतः)" लेख का अनुवाद प्रस्तुत करता हूं।

21 वीं सदी की सबसे लोकप्रिय भाषाओं में से एक होने के नाते, पायथन में निश्चित रूप से कई दिलचस्प विशेषताएं हैं जो विस्तार से देखने लायक हैं। उनमें से तीन को आज माना जाएगा, प्रत्येक सैद्धांतिक रूप से और फिर व्यावहारिक उदाहरणों के साथ।

छवि

मुख्य कारण मैं इन कार्यों के बारे में बात करना चाहता हूं क्योंकि वे लूप लिखने से बचने में मदद करते हैं कुछ मामलों में साइकिल महंगी हो सकती है, और इसके अलावा, ये सुविधाएँ गति बढ़ाने में मदद करेंगी।

यहां उन कार्यों को दिखाया गया है जिनके बारे में लेख में चर्चा की गई है:

1. नक्शा ()
2. फ़िल्टर ()
3. घटाना ()

यदि आपने पहले से ही इन कार्यों के बारे में सुना है, तो अपने ज्ञान को थोड़ा और सिद्धांत और उदाहरणों के साथ मजबूत करने में कुछ भी गलत नहीं है।

तो, आगे की हलचल के बिना ... चलो शुरू करें!

नक्शा ()


मानचित्र () फ़ंक्शन कुछ सरणी के साथ एक अन्य फ़ंक्शन के पैरामीटर के रूप में लेता है। सरणी में प्रत्येक तत्व के लिए एक फ़ंक्शन (एक तर्क के रूप में पारित) लागू करने के लिए विचार है

यह दो कारणों से काम आता है:

  1. आपको लूप लिखने की आवश्यकता नहीं है
  2. यह लूप से तेज है

आइए इसे कार्रवाई में देखें। मैं एक फ़ंक्शन "num_func ()" घोषित करूंगा जो एक एकल संख्या को पैरामीटर के रूप में लेता है। यह संख्या चुकता है, 2 से विभाजित है, और इस तरह से वापस आ गई। ध्यान दें कि संचालन को मनमाने ढंग से चुना गया था, आप फ़ंक्शन के अंदर कुछ भी कर सकते हैं:

छवि

अब हम संख्याओं की एक सरणी घोषित करते हैं, जिसे हम "num_func ()" लागू करना चाहते हैं। ध्यान दें कि "मैप ()" खुद ही डिस्प्ले ऑब्जेक्ट को लौटा देगा , इसलिए आपको इसे एक सूची में बदलने की आवश्यकता है:

छवि

ऐसा लगता है कि प्रक्रिया सफलतापूर्वक पूरी हो गई है। यहां कुछ भी क्रांतिकारी नहीं है, लेकिन जब संभव हो तो साइकिल से बचना अच्छा होगा।

फ़िल्टर ()


यहां एक और सभ्य विशेषता है जो आपको समय बचाएगी - लिखित और निष्पादन दोनों में। जैसा कि नाम से पता चलता है, विचार सरणी में केवल उन तत्वों को संग्रहीत करना है जो एक निश्चित स्थिति को संतुष्ट करते हैं

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

आइए इसे कार्रवाई में देखें। मैंने आगे बढ़कर एक फ़ंक्शन घोषित किया "more_than_15 ()", जिसका अर्थ है, जैसा कि नाम से पता चलता है, "सही" वापस आ जाएगा यदि पैरामीटर के रूप में निर्दिष्ट तत्व 15 से अधिक है:

छवि

अगला, हम एक संख्या की घोषणा करते हैं और उन्हें फ़ंक्शन के दूसरे पैरामीटर के रूप में पास करते हैं। फ़िल्टर () ":

छवि

जैसा कि अपेक्षित था, केवल तीन मान इस स्थिति को संतुष्ट करते हैं। एक बार फिर, यहां क्रांतिकारी कुछ भी नहीं है, लेकिन यह चक्र की तुलना में बहुत बेहतर दिखता है।

कम करना ()


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

अंतिम भाग महत्वपूर्ण है - "घटाना ()" तत्वों की एक सरणी वापस नहीं करता है, यह हमेशा एक ही मूल्य देता है। आइए इस अवधारणा को समझने के लिए आरेख पर एक नज़र डालें:

छवि

यहाँ तर्क लिखित है कि आरेख 100% स्पष्ट नहीं है:

  1. 5 को 10 में जोड़ा गया, 15 में परिणाम
  2. 15 को 12 में जोड़ा गया, 27 में परिणाम
  3. 27 को 18 में जोड़ा गया है, परिणाम 45 है
  4. 45 को 25 में जोड़ा गया है, परिणाम 70 है

और 70 वह मूल्य है जो वापस लौटता है। कोड के कार्यान्वयन के साथ शुरू करने के लिए, चलो फंक्शंस टूल मॉड्यूल से रिडक्शन फ़ंक्शन को आयात करते हैं और एक फ़ंक्शन की घोषणा करते हैं जो दो संख्याओं का योग लौटाता है :

छवि

अब हम कोड में आरेख पर लौट सकते हैं और यह सुनिश्चित कर सकते हैं कि सब कुछ उसी तरह काम करता है जैसे कि

छवि

जब तक आप टिप्पणी अनुभाग पर नहीं जाते हैं, मुझे पूरी तरह से पता है। सूची आइटमों को सारांशित करने के अन्य तरीके हैं। यह प्रदर्शित करने का सबसे सरल उदाहरण है कि कोई फ़ंक्शन कैसे काम करता है।

तुम्हारे जाने से पहले:


मुझे उम्मीद है कि आप अपने दैनिक जीवन में इन तीन कार्यों का उपयोग कर सकते हैं। गति वृद्धि महत्वपूर्ण नहीं हो सकती है - यह आपके द्वारा काम करने वाले डेटा की मात्रा पर निर्भर करता है - लेकिन कोड कम लूप के साथ बेहतर दिखाई देगा।

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

पढ़ने के लिए धन्यवाद।

All Articles