٪۴۰ تخفیف تابستانه شروع شد! بزرگترین حراج سال ما

به ما بپیوندید

آموزش پایتون لامبدا

تابع lambda یک تابع ناشناس کوچک است. یک تابع lambda می تواند هر تعداد آرگومان را بگیرد ، اما فقط می تواند یک عبارت داشته باشد. نحو lambda arguments : expression عبارت اجرا می شود و نتیجه بر می گردد:…

محمد یوسفی

11 سپتامبر 2021

تابع lambda یک تابع ناشناس کوچک است.

یک تابع lambda می تواند هر تعداد آرگومان را بگیرد ، اما فقط می تواند یک عبارت داشته باشد.


نحو

lambda arguments : expression

عبارت اجرا می شود و نتیجه بر می گردد:

مثال

10 را به آرگومان اضافه کنید aو نتیجه را برگردانید:

x = lambda a : a + 10
print(x(5))

توابع Lambda می توانند هر تعداد آرگومان بگیرند:

مثال

آرگومان را aبا آرگومان ضرب کنید bو نتیجه را برگردانید:

x = lambda a, b : a * b
print(x(5, 6))

مثال

استدلال خلاصه a، bو cو بازگشت به نتیجه:

x = lambda a, b, c : a + b + c
print(x(5, 6, 2))

چرا از توابع Lambda استفاده می کنیم؟

هنگامی که از لامبدا به عنوان یک تابع ناشناس در داخل یک تابع دیگر استفاده می کنید ، قدرت لامبدا بهتر نشان داده می شود.

بگویید که یک تعریف تابع دارید که از یک آرگومان استفاده می کند و آن آرگومان با یک عدد ناشناخته ضرب می شود:

def myfunc(n):
  return lambda a : a * n

از این تعریف تابع برای ایجاد تابعی استفاده کنید که همیشه عددی را که ارسال می کنید دو برابر کند:

مثال

def myfunc(n):
  return lambda a : a * n

mydoubler = myfunc(2)

print(mydoubler(11))

یا ، از همان تعریف تابع برای ایجاد تابعی استفاده کنید که همیشه عددی را که ارسال می کنید سه برابر کند:

مثال

def myfunc(n):
  return lambda a : a * n

mytripler = myfunc(3)

print(mytripler(11))

یا از یک تابع تعریف یکسان برای ایجاد هر دو توابع در یک برنامه استفاده کنید:

مثال

def myfunc(n):
  return lambda a : a * n

mydoubler = myfunc(2)
mytripler = myfunc(3)

print(mydoubler(11))
print(mytripler(11))

هنگامی که به یک تابع ناشناس برای مدت زمان کوتاهی نیاز است از توابع lambda استفاده کنید.

منبع

مطالب مرتبط

0 0 رای ها
امتیازدهی به مقاله
اشتراک در
اطلاع از
guest
0 نظرات
بازخورد (Feedback) های اینلاین
مشاهده همه دیدگاه ها