שימוש באגרגציית נתונים
חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-Python של Coddy. שיעור 53 מתוך 78.
הבנות רשימה מספקות דרך תמציתית ליצור רשימות חדשות על סמך איטרטורים קיימים. אפשר לשלב פונקציות צבירת נתונים כמו sum(), min() ו־max() ישירות בתוך הבנות רשימה כדי לבצע חישובים על איברי הרשימה החדשה בזמן יצירתה.
חישוב סכום הריבועים:
numbers = [1, 2, 3, 4, 5]
sum_of_squares = sum([n * n for n in numbers])
print(sum_of_squares)
# פלט: 55בדוגמה הזו, יצירת הרשימה [n * n for n in numbers] יוצרת רשימה של ריבועים, והפונקציה sum() מחשבת את סכום הריבועים האלה.
מציאת הערך המינימלי מבין ערכים שעברו טרנספורמציה:
numbers = [-3, -1, 0, 1, 3]
min_absolute = min([abs(n) for n in numbers])
print(min_absolute)
# פלט: 0כאן, הבנת הרשימה [abs(n) for n in numbers] יוצרת רשימה של ערכים מוחלטים, והפונקציה min() מוצאת את הערך המינימלי ברשימה הזו.
מציאת הערך המרבי מבין הערכים המסוננים:
numbers = [1, 2, 3, 4, 5, 6]
max_even = max([n for n in numbers if n % 2 == 0])
print(max_even)
# פלט: 6בדוגמה זו, יצירת הרשימה באמצעות הבנת רשימה [n for n in numbers if n % 2 == 0] יוצרת רשימה של מספרים זוגיים, והפונקציה max() מוצאת את הערך המרבי ברשימה זו.
אתגר
קלכתבו פונקציה sum_positive_evens שמקבלת רשימת מספרים כקלט. השתמשו בהבנת רשימה כדי לסנן מספרים זוגיים חיוביים, ואז השתמשו ב־sum() כדי לחשב את הסכום שלהם. החזירו את התוצאה.
קלט לדוגמה:
numbers = [-10, -5, 0, 2, 4, 7, 10, 12]פלט לדוגמה:
28נסו בעצמכם
def sum_positive_evens(numbers):
# כתבו כאן קודהשיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה לוגיקה וזרימת תוכנית
4יישום ספר אנשי קשר
הצגת התפריטהוספת איש קשר7קבוצות חלק 2
פעולות מתמטיות חלק 1פעולות מתמטיות חלק 2סיכום – חיפוש אוצרתת־קבוצות וקבוצות־עלמעבר על קבוצותסיכום – מעקב אחר טורניר10הבנת רשימות בסיסית
התחביריצירת רשימות פשוטותהוספת תנאיםשימוש באגרגציית נתוניםחזרה – בית הרשימותחזרה – יסודות החופש8מנהל רישומי תלמידים
סקירת הפרויקטהוספת תלמידתרגלו בעצמכם: קומפיילר Python אונליין