Lambda في Python

وظيفة lambda هي وظيفة صغيرة مجهولة المصدر.

وظيفة lambda يمكن أن تأخذ أي عدد من المعامل، لكن يمكن أن تحتوي على تعبير واحد فقط.

النحو

lambda المعامل : expression

تنفيذ التعبير وإرجاع النتيجة:

مثال

وظيفة lambda، التي تضيف 10 إلى الرقم المدخل كمعامل، ثم تطبق النتيجة:

x = lambda a : a + 10
print(x(5))

تشغيل مثال

يمكن لدالة lambda تقبيل أي عدد من المعاملات:

مثال

دالة lambda تضرب المعاملات a و b وتطبع النتيجة:

x = lambda a, b : a * b
print(x(5, 6))

تشغيل مثال

مثال

دالة lambda تضيف المعاملات a، b و c وتطبع النتيجة:

x = lambda a, b, c : a + b + c
print(x(5, 6, 2))

تشغيل مثال

لماذا استخدام دالة lambda؟

عند استخدام lambda كدالة مجهولة داخل دالة أخرى، يتم عرض قوة lambda بشكل أفضل.

افترض أن لديك تعريف دالة يحتوي على معامل واحد سيتم ضربه بعدد غير معروف:

def myfunc(n):
  return lambda a : a * n

استخدم تعريف الدالة هذا لإنشاء دالة دائمًا تجعل الرقم الذي ترسله يتضاعف:

مثال

def myfunc(n):
  return lambda a : a * n
mydoubler = myfunc(2)
print(mydoubler(11))

تشغيل مثال

أو، استخدم نفس تعريف الدالة لإنشاء دالة دائمًا تجعل الرقم الذي ترسله يتضاعف ثلاث مرات:

مثال

def myfunc(n):
  return lambda a : a * n
mytripler = myfunc(3)
print(mytripler(11))

تشغيل مثال

أو، استخدم نفس تعريف الدالة في نفس البرنامج لإنشاء دالتين:

مثال

def myfunc(n):
  return lambda a : a * n
mydoubler = myfunc(2)
mytripler = myfunc(3)
print(mydoubler(11)) 
print(mytripler(11))

تشغيل مثال

إذا كنت بحاجة إلى دالة مجهولة في وقت قصير، استخدم دالة lambda.