⊗pyPmFnLa 16 of 129 menu

पायथन में लैम्बडा फ़ंक्शन

मान लीजिए कि हमारे पास एक फ़ंक्शन func है, जो पैरामीटर के रूप में एक सूची और एक कॉलबैक लेता है। यह फ़ंक्शन मूल सूची के तत्वों से एक नई सूची बनाएगा। इसके साथ ही प्रत्येक तत्व पर कॉलबैक लागू किया जाएगा:

def func(lst, callback): res = [] for el in lst: res.append(callback(el)) return res

अब एक फ़ंक्शन square बनाते हैं, जो उसे दी गई संख्या का वर्ग करेगी:

def square(num): return num ** 2

आइए func के पैरामीटर में एक संख्यात्मक सूची और फ़ंक्शन square को कॉलबैक के रूप में पास करें:

print( func([1, 2, 3], square) )

कंसोल में संख्याओं के वर्गों से बनी एक नई सूची प्रिंट होगी:

[1, 4, 9]

हालाँकि, इस कोड को लैम्बडा-फ़ंक्शन का उपयोग करके काफी छोटा किया जा सकता है - एक अनाम फ़ंक्शन, जिसे कीवर्ड lambda की सहायता से कॉल किया जाता है और एक ही पंक्ति में लिखा जाता है। इसलिए लैम्बडा-फ़ंक्शन में केवल उन्हीं फ़ंक्शनों को फिर से लिखा जा सकता है, जिनका कोड एक पंक्ति में आता है।

लैम्बडा फ़ंक्शन का सिंटैक्स इस प्रकार है:

lambda फ़ंक्शन का पैरामीटर: फ़ंक्शन के पैरामीटर के साथ ऑपरेशन

आइए फ़ंक्शन square को लैम्बडा-फ़ंक्शन की सहायता से फिर से लिखें और इसे पैरामीटर func में पास करें:

print( func([1, 2, 3], lambda num: num ** 2) )

लैम्बडा-फ़ंक्शन को एक वेरिएबल में भी लिखा जा सकता है:

square = lambda num: num ** 2 print( func([1, 2, 3], square) )

निम्नलिखित कोड को लैम्बडा-फ़ंक्शन के माध्यम से फिर से लिखें:

def func(num, clb): return clb(num) def clb(num): return num + 1 print( func(2, clb) )

निम्नलिखित कोड को लैम्बडा-फ़ंक्शन के माध्यम से फिर से लिखें:

def func(num, clb1, clb2): return (clb1(num), clb2(num)) def clb1(num): return num + 1 def clb2(num): return num - 1 print( func(2, clb1, clb2) )

निम्नलिखित कोड को लैम्बडा-फ़ंक्शन के माध्यम से फिर से लिखें:

def func(num1, num2, clb): res = clb(num1) + num2 return res def clb(num): return num ** 3 print(func(2, 6, clb))
हिन्दी
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
हम साइट के कार्य, विश्लेषण और व्यक्तिगतकरण के लिए कुकीज़ का उपयोग करते हैं। डेटा प्रसंस्करण गोपनीयता नीति के अनुसार किया जाता है।
सभी स्वीकार करें कॉन्फ़िगर करें अस्वीकार करें