הוספת תנאים
חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-Python של Coddy. שיעור 52 מתוך 78.
הכללות רשימה נעשות עוצמתיות עוד יותר כשמוסיפים להן לוגיקה מותנית. כך אפשר ליצור רשימות חדשות על סמך רשימות קיימות, תוך סינון ושינוי של איברים בהתאם לתנאים מוגדרים.
התחביר להוספת תנאי ליצירת רשימה באמצעות הבנת רשימה הוא:
new_list = [expression for item in iterable if condition]הנה פירוט של התחביר:
new_list: הרשימה החדשה שתיווצר.
expression: הערך שייכלל ב־new_list. זו יכולה להיות גרסה שעברה שינוי שלitem.
for item in iterable: לולאה שעוברת על כל איבר ב־iterable(למשל, רשימה, tuple או טווח).
item: הרכיב הנוכחי שמטופל בלולאה.
if condition: מסנן שקובע אם יש לכלול אתitemהנוכחי ב-new_list. ה-expressionמוערך רק אם ה-conditionהואTrue.
הנה דוגמה:
numbers = [1, 2, 3, 4, 5, 6]
evens = [n for n in numbers if n % 2 == 0]
print(evens)
# פלט: [2, 4, 6]בדוגמה זו, יצירת הרשימה באמצעות תחביר מקוצר יוצרת רשימה חדשה בשם evens על ידי לקיחת כל איבר n מתוך הרשימה numbers והכללתו רק אם הוא זוגי (כלומר, n % 2 == 0).
אתגר
קלצרו פונקציה בשם filter_and_square שמקבלת רשימת מספרים numbers כארגומנט. הפונקציה צריכה להשתמש בהבנת רשימה כדי ליצור רשימה חדשה שכוללת את הריבועים של המספרים החיוביים בלבד מהרשימה המקורית. הפונקציה צריכה להחזיר את הרשימה החדשה.
נסו בעצמכם
def filter_and_square(numbers):
# כתבו כאן את הקודהשיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה לוגיקה וזרימת תוכנית
4יישום ספר אנשי קשר
הצגת התפריטהוספת איש קשר7קבוצות חלק 2
פעולות מתמטיות חלק 1פעולות מתמטיות חלק 2סיכום – חיפוש אוצרתת־קבוצות וקבוצות־עלמעבר על קבוצותסיכום – מעקב אחר טורניר10הבנת רשימות בסיסית
התחביריצירת רשימות פשוטותהוספת תנאיםשימוש באגרגציית נתוניםחזרה – בית הרשימותחזרה – יסודות החופש8מנהל רישומי תלמידים
סקירת הפרויקטהוספת תלמידתרגלו בעצמכם: קומפיילר Python אונליין