تابع lambda
توابع Lambda در پایتون: ابزاری قدرتمند برای کدنویسی مختصر
توابع lambda در پایتون یکی از ویژگیهای جذاب این زبان هستند که به شما امکان میدهند توابع کوچک و بینام را در یک خط کد تعریف کنید. این توابع زمانی مفید هستند که نیاز به یک تابع ساده دارید و نمیخواهید با تعریف رسمی تابع (def) زمان بگذارید.
توابع lambda اغلب به عنوان "توابع یکبارمصرف" شناخته میشوند زیرا معمولاً در جای خاصی از کد استفاده شده و دیگر به آنها مراجعه نمیشود.
ساختار اصلی توابع lambda
سینتکس کلی یک تابع lambda به صورت زیر است:
lambda arguments: expression
مثال ساده:
مثال | خروجی |
---|---|
lambda x: x * 2 | تابعی که ورودی را دوبرابر میکند |
lambda a, b: a + b | تابع جمع دو عدد |
کاربردهای رایج lambda
توابع lambda معمولاً در این موارد استفاده میشوند:
- به عنوان پارامتر برای توابعی مانند map()، filter() و reduce()
- در مرتبسازی لیستها با متد sort()
- برای ایجاد توابع ساده و سریع بدون نیاز به نام
- در ترکیب با comprehensionها برای پردازش دادهها
مثال عملی با تابع map():
numbers = [1, 2, 3, 4] squared = list(map(lambda x: x**2, numbers)) # نتیجه: [1, 4, 9, 16]
محدودیتهای توابع lambda
اگرچه lambdaها مفید هستند، اما محدودیتهایی دارند:
- فقط میتوانند شامل یک عبارت باشند (چندخطی نیستند)
- نمیتوانند شامل دستورات (مانند return، if، for) باشند
- خوانایی کد ممکن است برای توابع پیچیده کاهش یابد
برای یادگیری عمیقتر درباره توابع در پایتون، میتوانید مقاله ادامه مطلب را مطالعه کنید.