انجمن‌های فارسی اوبونتو

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید


ارائه ۲۴٫۱۰ اوبونتو منتشر شد 🎉

نویسنده موضوع: Lambda Expressions در python چیست؟  (دفعات بازدید: 2194 بار)

0 کاربر و 1 مهمان درحال مشاهده موضوع.

آفلاین javad751

  • Jr. Member
  • *
  • ارسال: 53
  • جنسیت : پسر
Lambda Expressions در python چیست؟
« : 07 اسفند 1393، 09:27 ق‌ظ »
سلام،دوستان اگر ممکنه در مورد Lambda Expressions و کاربردش توضیح بدید

چون انگلیسی بود من زیاد متوجه نشدم
https://docs.python.org/3.3/tutorial/controlflow.html#lambda-expressions

آفلاین ngc0der

  • Full Member
  • *
  • ارسال: 106
پاسخ : Lambda Expressions در python چیست؟
« پاسخ #1 : 07 اسفند 1393، 09:25 ب‌ظ »
سلام
کلا در زبانهای برنامه نویسی مفهوم lambda برای توابع بی نام به کار میره.مثلا در کدی که در لینک هست
>>> def make_incrementor(n):
...     return lambda x: x + n
...
>>> f = make_incrementor(42)
>>> f(0)
42
>>> f(1)
43

تابع make_incrementor یک تابع برمی گردونه که به دلیل ساده بودن با lambda پیاده سازی شده. اگه نخوایم با lambda پیاده سازی کنیم باید چیزی شبیه این بنویسیم:
>>> def make_incrementor(n):
...     def wrapper(x):
...             return x + n
...     return wrapper
...
>>> f = make_incrementor(42)
>>> f(0)
42
>>> f(1)
43
>>>

که خب طولانی تره و همیشه میگن کد کمتر زندگی بهتر!