אתגר סיכום - מיון עם Lambda
חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-Python של Coddy. שיעור 59 מתוך 78.
פונקציות lambda שימושיות מאוד עם הפונקציה sorted() להתאמה אישית של המיון בתרחישים שונים. הנה כמה דוגמאות:
מיון מחרוזות לפי אורך:
names = ["Alice", "Bob", "Charlie", "Diana"]
sorted_names = sorted(names, key=lambda x: len(x))
print(sorted_names)
# פלט: ['Bob', 'Alice', 'Diana', 'Charlie']מיון מילונים לפי ערכים:
grades = {"Alice": 85, "Bob": 90, "Charlie": 78}
sorted_grades = sorted(grades.items(), key=lambda x: x[1])
print(sorted_grades)
# פלט: [('Charlie', 78), ('Alice', 85), ('Bob', 90)]מיון מספרים לפי ערך מוחלט:
numbers = [-10, 15, -20, 25]
sorted_numbers = sorted(numbers, key=lambda x: abs(x))
print(sorted_numbers)
# פלט: [-10, 15, -20, 25]מיון tuples לפי כמה קריטריונים:
data = [("Alice", 25), ("Bob", 30), ("Charlie", 25)]
sorted_data = sorted(data, key=lambda x: (x[1], x[0]))
print(sorted_data)
# פלט: [('Alice', 25), ('Charlie', 25), ('Bob', 30)]אתגר
קלצרו פונקציה בשם sort_tuples שמקבלת רשימה של טאפלות data כארגומנט. כל טאפל ב-data מכיל שני איברים: מחרוזת ומספר. הפונקציה צריכה להשתמש בפונקציה sorted() יחד עם פונקציית lambda כדי למיין את רשימת הטאפלות לפי האיבר השני (המספר) בסדר עולה. הפונקציה צריכה להחזיר את רשימת הטאפלות הממוינת.
נסו בעצמכם
def sort_tuples(data):
# כתבו כאן את הקודהשיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה לוגיקה וזרימת תוכנית
4יישום ספר אנשי קשר
הצגת התפריטהוספת איש קשר7קבוצות חלק 2
פעולות מתמטיות חלק 1פעולות מתמטיות חלק 2סיכום – חיפוש אוצרתת־קבוצות וקבוצות־עלמעבר על קבוצותסיכום – מעקב אחר טורניר8מנהל רישומי תלמידים
סקירת הפרויקטהוספת תלמיד11פונקציות מתקדמות
החזרת כמה ערכיםפונקציות Lambda חלק 1פונקציות Lambda חלק 2אתגר סיכום - מיון עם Lambdaפונקציות רקורסיביות חלק 1פונקציות רקורסיביות חלק 2סיכום - סכום של רשימה מקוננתתרגלו בעצמכם: קומפיילר Python אונליין