Python – توابع لامبدا (Lambda)
توابع لامبدا در پایتون
توابع لامبدا در پایتون، توابع کوچکی هستند که نام ندارند و برای انجام محاسبات ساده و کوتاه به کار میروند. این توابع میتوانند هر تعداد آرگومان بگیرند اما تنها یک عبارت میتوانند داشته باشند.
نحوه تعریف
ساختار توابع لامبدا به صورت زیر است:
lambda arguments: expression
عبارت بعد از :
اجرا میشود و نتیجه آن به عنوان خروجی تابع برگردانده میشود.
مثال:
تابعی که 10 واحد به آرگومان a
اضافه میکند:
x = lambda a: a + 10
print(x(5)) # Output: 15
چندین آرگومان در توابع لامبدا
توابع لامبدا میتوانند هر تعداد آرگومان دریافت کنند.
مثال:
تابعی که دو آرگومان a
و b
را در هم ضرب میکند:
x = lambda a, b: a * b
print(x(5, 6)) # Output: 30
تابعی که مجموع سه آرگومان a
, b
, و c
را محاسبه میکند:
x = lambda a, b, c: a + b + c
print(x(5, 6, 2)) # Output: 13
چرا از توابع لامبدا استفاده کنیم؟
قدرت واقعی توابع لامبدا زمانی نشان داده میشود که از آنها به عنوان تابع ناشناس در توابع دیگر استفاده کنید. مثلاً تابعی که یک عدد را دریافت میکند و با یک عدد ناشناخته ضرب میکند:
def myfunc(n):
return lambda a: a * n
مثال:
ایجاد تابعی که همیشه عدد ورودی را دو برابر میکند:
def myfunc(n):
return lambda a: a * n
mydoubler = myfunc(2)
print(mydoubler(11)) # Output: 22
مثال:
ایجاد تابعی که همیشه عدد ورودی را سه برابر میکند:
def myfunc(n):
return lambda a: a * n
mytripler = myfunc(3)
print(mytripler(11)) # Output: 33
مثال:
استفاده از یک تعریف برای ایجاد دو تابع مختلف:
def myfunc(n):
return lambda a: a * n
mydoubler = myfunc(2)
mytripler = myfunc(3)
print(mydoubler(11)) # Output: 22
print(mytripler(11)) # Output: 33
کاربرد توابع لامبدا
توابع لامبدا زمانی استفاده میشوند که به یک تابع ناشناس برای یک مدت کوتاه نیاز داشته باشید.
برای ارسال نظر لطفا ابتدا وارد حساب کاربری خود شوید. صفحه ورود و ثبت نام