loading...

پرطرفدارترین های درسمن

بازدید : 82
يکشنبه 22 خرداد 1401 زمان : 8:35

تعريف لامبدا

در اين پست به آموزش لامبدا در پايتون خواهيم پرداخت پس همراه ما باشيد. لامبدا يک روش ساده براي تعريف تابع است. اين تابع براي تعريف تابع هاي کوچک يکبار مصرف که تابع اصلي بسيار بزرگ و حجيم است استفاده مي شود.

نکته: تابع هاي لامبدا ناشناس هستند براي همين لازم نيست نامي برايشان تعيين کنيم. در واقع وقتي براي مدت کوتاهي به يک تابع نياز داريم از تابع لامبدا استفاده مي کنيم. توابع عادي با کلمه کليدي def در پايتون تعريف ميشوند اما توابع ناشناس با کلمه کليدي لامبدا تعريف مي شوند.

ساختار تعريف لامبدا

Lambda arguments: expreeion

براي درک مفهوم لامبدا يک مثال در ادامه خواهيم داشت.

X= lambda a,b : a*b
Print(x(2,5))

خروجي:

10

نکته: توابع لامبدا مي تواند چندين آرگومان داشته باشند اما فقط يک عبارت برگردانده مي شود.

نکته: توابع لامبدا همراه با توابع توکار مانند ()filter و()map و...استفاده مي شود.

نکته: در پايتون معمولا از لامبدا به عنوان آرگومان براي تابع مرتبه بالاتر استفاده مي گردد.

تابع لامبدا با ()filter

تابع filter يک تابع و يک ليست را به عنوان آرگومان دريافت ميکند. و يک ليست جديد بازگردانده مي شود. مانند نمونه:

my_list = [2,5,7,12,23,28]
new_list = list(filter(lambda x: (x%2==0) , my_list)) 
print(new_list)

خروجي:

[2, 12,28]

تابع لامبدا با ()map

تابع ()map يک تابع و يک ليست دريافت ميکند و يک ليست جديد برمي گردد که شامل تمام موارد اصلاح شده لامبدا است. در ادامه مثالي از کاربرد اين تابع براي دو برابر کردن تمام موارد موجود در ليست را آورده ايم.

my_list = [2,3,5,7,12,20]
new_list = list(map(lambda x: x*2 , my_list)) 
print(new_list)

خروجي:

[4,6,10,14,24,40]

نکته: در توابع لامبدا امکان چند عبارت را ندارد به همين دليل ميتوانيم دو تابع لامبدا ايجاد کنيم و تابع لامبدا ديگر را به عنوان پارامتر براي تابع اول فراخواني کنيم.

دوست عزيز اميدوارم مطالب اين پست برايتان مفيد بوده باشد براي يادگيري بيشتر اين مبحث پيشنهاد مي کنم به وب سايت درسمن آموزش پايتون مراجعه کنيد.smiley

تعريف لامبدا

در اين پست به آموزش لامبدا در پايتون خواهيم پرداخت پس همراه ما باشيد. لامبدا يک روش ساده براي تعريف تابع است. اين تابع براي تعريف تابع هاي کوچک يکبار مصرف که تابع اصلي بسيار بزرگ و حجيم است استفاده مي شود.

نکته: تابع هاي لامبدا ناشناس هستند براي همين لازم نيست نامي برايشان تعيين کنيم. در واقع وقتي براي مدت کوتاهي به يک تابع نياز داريم از تابع لامبدا استفاده مي کنيم. توابع عادي با کلمه کليدي def در پايتون تعريف ميشوند اما توابع ناشناس با کلمه کليدي لامبدا تعريف مي شوند.

ساختار تعريف لامبدا

Lambda arguments: expreeion

براي درک مفهوم لامبدا يک مثال در ادامه خواهيم داشت.

X= lambda a,b : a*b
Print(x(2,5))

خروجي:

10

نکته: توابع لامبدا مي تواند چندين آرگومان داشته باشند اما فقط يک عبارت برگردانده مي شود.

نکته: توابع لامبدا همراه با توابع توکار مانند ()filter و()map و...استفاده مي شود.

نکته: در پايتون معمولا از لامبدا به عنوان آرگومان براي تابع مرتبه بالاتر استفاده مي گردد.

تابع لامبدا با ()filter

تابع filter يک تابع و يک ليست را به عنوان آرگومان دريافت ميکند. و يک ليست جديد بازگردانده مي شود. مانند نمونه:

my_list = [2,5,7,12,23,28]
new_list = list(filter(lambda x: (x%2==0) , my_list)) 
print(new_list)

خروجي:

[2, 12,28]

تابع لامبدا با ()map

تابع ()map يک تابع و يک ليست دريافت ميکند و يک ليست جديد برمي گردد که شامل تمام موارد اصلاح شده لامبدا است. در ادامه مثالي از کاربرد اين تابع براي دو برابر کردن تمام موارد موجود در ليست را آورده ايم.

my_list = [2,3,5,7,12,20]
new_list = list(map(lambda x: x*2 , my_list)) 
print(new_list)

خروجي:

[4,6,10,14,24,40]

نکته: در توابع لامبدا امکان چند عبارت را ندارد به همين دليل ميتوانيم دو تابع لامبدا ايجاد کنيم و تابع لامبدا ديگر را به عنوان پارامتر براي تابع اول فراخواني کنيم.

دوست عزيز اميدوارم مطالب اين پست برايتان مفيد بوده باشد براي يادگيري بيشتر اين مبحث پيشنهاد مي کنم به وب سايت درسمن آموزش پايتون مراجعه کنيد.smiley

نظرات این مطلب

تعداد صفحات : 0

درباره ما
موضوعات
آمار سایت
  • کل مطالب : 56
  • کل نظرات : 0
  • افراد آنلاین : 1
  • تعداد اعضا : 0
  • بازدید امروز : 33
  • بازدید کننده امروز : 1
  • باردید دیروز : 0
  • بازدید کننده دیروز : 0
  • گوگل امروز : 0
  • گوگل دیروز : 0
  • بازدید هفته : 34
  • بازدید ماه : 39
  • بازدید سال : 221
  • بازدید کلی : 7108
  • <
    پیوندهای روزانه
    آرشیو
    اطلاعات کاربری
    نام کاربری :
    رمز عبور :
  • فراموشی رمز عبور؟
  • خبر نامه


    معرفی وبلاگ به یک دوست


    ایمیل شما :

    ایمیل دوست شما :



    کدهای اختصاصی