इन कार्यों को अनाम कहा जाता है क्योंकि def कीवर्ड का उपयोग करके उन्हें मानक तरीके से घोषित नहीं किया जाता है। छोटे अनाम फंक्शन बनाने के लिए आप लैम्ब्डा कीवर्ड का उपयोग कर सकते हैं।
- लैम्ब्डा फॉर्म कितने भी तर्क ले सकते हैं लेकिन अभिव्यक्ति के रूप में सिर्फ एक मान लौटा सकते हैं। उनमें कमांड या एक से अधिक एक्सप्रेशन शामिल नहीं हो सकते हैं।
- एक अनाम फ़ंक्शन प्रिंट करने के लिए एक सीधा कॉल नहीं हो सकता क्योंकि लैम्ब्डा को एक अभिव्यक्ति की आवश्यकता होती है
- लैम्ब्डा फ़ंक्शन का अपना स्थानीय नाम स्थान होता है और वे अपनी पैरामीटर सूची और वैश्विक नामस्थान के अलावा अन्य चरों तक नहीं पहुंच सकते हैं।
- हालांकि ऐसा लगता है कि लैम्ब्डा एक फ़ंक्शन का एक-पंक्ति संस्करण है, वे सी या सी ++ में इनलाइन स्टेटमेंट के बराबर नहीं हैं, जिसका उद्देश्य प्रदर्शन कारणों से आमंत्रण के दौरान फ़ंक्शन स्टैक आवंटन पास करना है।
सिंटैक्स
लैम्ब्डा फंक्शन के सिंटैक्स में केवल एक ही स्टेटमेंट होता है, जो इस प्रकार है -
lambda [arg1 [,arg2,.....argn]]:expression
उदाहरण
फंक्शन का लैम्ब्डा फॉर्म कैसे काम करता है, यह दिखाने के लिए निम्नलिखित उदाहरण है -
#!/usr/bin/python # Function definition is here sum = lambda arg1, arg2: arg1 + arg2; # Now you can call sum as a function print "Value of total : ", sum( 10, 20 ) print "Value of total : ", sum( 20, 20 )
आउटपुट
जब उपरोक्त कोड निष्पादित किया जाता है, तो यह निम्नलिखित परिणाम उत्पन्न करता है -
Value of total : 30 Value of total : 40