פונקציות Lambda חלק 1
חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-Python של Coddy. שיעור 57 מתוך 78.
פונקציית lambda היא פונקציה קטנה ואנונימית שמוגדרת באמצעות מילת המפתח lambda. פונקציות lambda יכולות לקבל כל מספר של ארגומנטים, אך יכולות להכיל ביטוי אחד בלבד. הן שימושיות ליצירת פונקציות פשוטות בשורה אחת, ללא צורך בהגדרה מלאה של פונקציה באמצעות מילת המפתח def.
התחביר של פונקציית lambda הוא:
lambda arguments: expressionהנה פירוט של התחביר:
lambda: מילת המפתח שמציינת את תחילתה של הגדרת פונקציית lambda.arguments: רשימה של ארגומנטים המופרדים בפסיקים, בדומה לפרמטרים בהגדרה של פונקציה רגילה.
expression: ביטוי יחיד שמוערך ומוחזר כתוצאה של פונקציית הלמבדה.
הנה דוגמה לפונקציית lambda שמחברת שני מספרים:
add = lambda x, y: x + y
result = add(5, 3)
print(result)
# פלט: 8בדוגמה הזו, פונקציית ה-lambda מקבלת שני ארגומנטים, x ו-y, ומחזירה את הסכום שלהם. פונקציית ה-lambda משויכת למשתנה add, שאותו אפשר לקרוא לאחר מכן כמו פונקציה רגילה.
פונקציות למבדה משמשות לעיתים קרובות במצבים שבהם דרושה פונקציה קצרה וחד־פעמית, למשל עם פונקציות מסדר גבוה כמו map, filter ו־reduce.
אתגר
קלצרו פונקציית lambda בשם multiply שמקבלת שלושה ארגומנטים, x, y ו־z, ומחזירה את המכפלה שלהם. לאחר הגדרת פונקציית ה־lambda, קראו לה עם הערכים 2, 3 ו־4, והדפיסו את התוצאה.
נסו בעצמכם
# צרו פונקציית lambda שמכפילה שלושה מספרים
multiply =
# קראו לפונקציית lambda עם הערכים 2, 3 ו-4
result =
# הדפיסו את התוצאה
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה לוגיקה וזרימת תוכנית
4יישום ספר אנשי קשר
הצגת התפריטהוספת איש קשר7קבוצות חלק 2
פעולות מתמטיות חלק 1פעולות מתמטיות חלק 2סיכום – חיפוש אוצרתת־קבוצות וקבוצות־עלמעבר על קבוצותסיכום – מעקב אחר טורניר8מנהל רישומי תלמידים
סקירת הפרויקטהוספת תלמיד11פונקציות מתקדמות
החזרת כמה ערכיםפונקציות Lambda חלק 1פונקציות Lambda חלק 2אתגר סיכום - מיון עם Lambdaפונקציות רקורסיביות חלק 1פונקציות רקורסיביות חלק 2סיכום - סכום של רשימה מקוננתתרגלו בעצמכם: קומפיילר Python אונליין