با عرض سلام و وقت بخیر خدمت کاربران سایت پی وی لرن . و کاربرانی که دوره کامل آموزش پایتون ، را دنبال می کنند. در قسمت قبلی به آموزش توابع در پایتون پرداختیم ، در این جلسه قصد داریم به آموزش توابع بی نام در پایتون یا Lambda در پایتون بپردازیم.
یک lambda درواقع یک تابع کوچک بدون نام است.
یک lambda می تواند هر تعدادی پارامتر قبول کند اما فقط یک عبارت می تواند داشته باشد.
ساختار دستور lambda :
1 | lambda arguments : expression |
در مثال زیر تابع lambda مقدار آرگومان را با ۱۰ جمع کرده و نتیجه را در x قرار می دهد:
1 2 | x = lambda a : a + 10 print(x(5)) |
در مثال زیر تابع lambda چندین آرگومان را دریافت کرده است:
1 2 | x = lambda a, b : a * b print(x(5, 6)) |
قدرت Lambda وقتی نمایان می شود که شما از آن ها به عنوان توابع بی نام در داخل توابع دیگر استفاده کنید.
فرض کنید یک تابع تعریف کرده اید که یک آرگومان را می گیرد و آن آرگومان با یک عدد ناشناس ضرب می شود:
1 2 | def myfunc(n): return lambda a : a * n |
از این تابع می توانیم برای ضرب یک عدد در ۲ استفاده کنیم:
1 2 3 4 5 6 | def myfunc(n): return lambda a : a * n mydoubler = myfunc(2) print(mydoubler(11)) |
که حاصل کد بالا ۲۲ خواهد بود.
همچنین می توانیم این تایع برای اعداد دیگر نیز استفاده کنیم:
1 2 3 4 5 6 | def myfunc(n): return lambda a : a * n mytripler = myfunc(3) print(mytripler(11)) |
یا یرای هر دو مورد تابع را استفاده می کنیم:
1 2 3 4 5 6 7 8 | def myfunc(n): return lambda a : a * n mydoubler = myfunc(2) mytripler = myfunc(3) print(mydoubler(11)) print(mytripler(11)) |
از توابع Lambda برای وقتی که یک تابع بی نام برای یک بازه زمانی کوتاه نیاز است، استفاده کنید.
جلسه آموزش توابع بی نام در پایتون یا Lambda در پایتون python نیز به پایان رسید.
در جلسه بعد به آموزش شی گرایی در پایتون python خواهیم پرداخت. با ما همراه باشید.