🔥در پایتون تابع لامبدا به چه دردی میخوره؟
🔰اول از همه تابع لامبدا چی هست؟؟
فرض کن میخوایم دو تا عدد رو جمع کنیم. با تابع لامبدا میتونیم این کار رو به سادگی انجام بدیم:
🌀اینجا ما یک تابع به نام add درست کردیم که دو تا عدد رو میگیره و جمعشون رو برمیگردونه.
🔰کاربردهای تابع لامبدا
🌀مثال با map
فرض کن یه لیست از اعداد داریم و میخوایم هر عدد رو دو برابر کنیم:
🌀اینجا ما از map استفاده کردیم که هر عدد رو به تابع لامبدا میده و نتیجه رو دو برابر میکنه.
🌀مثال با filter
حالا فرض کن میخوایم فقط اعداد زوج رو از یک لیست بگیریم:
🌀اینجا هم از filter استفاده کردیم تا فقط اعداد زوج رو از لیست بگیره.
⚠️نکته مهم
#python #lambda
Channel • @Programers_Cafe
Group • @IRdeveloperchat
🔰اول از همه تابع لامبدا چی هست؟؟
تابع لامبدا توی پایتون یه نوع تابع خیلی ساده و کوتاهه که میتونیم توی یک خط بنویسیم. به عبارتی دیگه، وقتی بخوایم یه کار خیلی سریع و ساده انجام بدیم، به جای اینکه یه تابع کامل با def بنویسیم، میتونیم از تابع لامبدا استفاده کنیم.🔰ساختار تابع لامبدا
lambda arguments: expression
• lambda:🔰مثال:
این کلمه کلیدی نشون میده که داریم یک تابع لامبدا تعریف میکنیم.
• arguments:
اینجا پارامترهایی که میخوایم به تابع بدیم رو مشخص میکنیم. مثلاً میتونیم یه یا چند عدد رو بهش بدیم.
• expression:
اینجا عملیاتی که میخوایم انجام بدیم رو مشخص میکنیم. مثلاً جمع دو عدد یا ضرب دو عدد.
فرض کن میخوایم دو تا عدد رو جمع کنیم. با تابع لامبدا میتونیم این کار رو به سادگی انجام بدیم:
add = lambda x, y: x + y
result = add(3, 5)
print(result) # خروجی: 8
🌀اینجا ما یک تابع به نام add درست کردیم که دو تا عدد رو میگیره و جمعشون رو برمیگردونه.
🔰کاربردهای تابع لامبدا
معمولاً توی جاهایی که بخوایم از توابع دیگه مثل map یا filter استفاده کنیم، خیلی به کار میان.
🌀مثال با map
فرض کن یه لیست از اعداد داریم و میخوایم هر عدد رو دو برابر کنیم:
numbers = [1, 2, 3, 4]
doubled = list(map(lambda x: x * 2, numbers))
print(doubled) # خروجی: [2, 4, 6, 8]
🌀اینجا ما از map استفاده کردیم که هر عدد رو به تابع لامبدا میده و نتیجه رو دو برابر میکنه.
🌀مثال با filter
حالا فرض کن میخوایم فقط اعداد زوج رو از یک لیست بگیریم:
numbers = [1, 2, 3, 4, 5, 6]
evens = list(filter(lambda x: x % 2 == 0, numbers))
print(evens) # خروجی: [2, 4, 6]
🌀اینجا هم از filter استفاده کردیم تا فقط اعداد زوج رو از لیست بگیره.
⚠️نکته مهم
تابعهای لامبدا بیشتر برای کارهای ساده و سریع خوبن. اگر مثلا بخوای کار پیچیده آیی رو انجام بدی، بهتره از توابع معمولی با def استفاده کنی تا کدت قابل فهمتر باشه.#Ah_sear
#python #lambda
Channel • @Programers_Cafe
Group • @IRdeveloperchat
👍9🔥2