פעולות נוספות על רשימות

אנחנו הולכים לראות רשימת פעולות שאפשר לעשות עם רשימות. ניסינו לצמצם את הרשימה עד כמה שאפשר לדברים הרלוונטיים ביותר, וחשוב לזכור שלא צריך לדעת את כל הפעולות האלו בעל-פה, אלא מספיק לדעת שהן קיימות למקרה ותתקלו בהן בהמשך.

מציאת איבר ברשימה#

in#

אופרטור ה- in הוא דרך נוחה לבדוק אם איבר קיים ברשימה. הוא מחזיר ערך בוליאני, True אם האיבר נמצא ברשימה ו-False אחרת. הנה דוגמה:

index#

אתה יכול להשתמש בפונקציה index כדי לבדוק איפה קיים אלמנט ברשימה: הפונקציה מחזירה את האינדקס של ההופעה הראשונה של הערך (לעומת in שרק אומרת לנו האם האלמנט קיים ברשימה). אם הערך לא נמצא, הפונקציה תחזיר שגיאה.

הזהרו משגיאות

אם תנסו להריץ את הקוד הבא תקבלו שגיאה, בגלל שהאלמנט לא מופיע ברשימה:

חיבור רשימות#

כדי לשלב שני רשימות לתוך רשימה אחת, ניתן להשתמש באופרטור + המחבר את הרשימות יחד. הנה דוגמא:

הוספת איברים לרשימה#

שתי פונקציות שונות מאפשרות לנו להוסיף איברים לרשימה, פונקציית append מאפשרת לנו להוסיף איבר לסוף הרשימה, בעוד שפונקציית insert מאפשרת לנו להכניס איבר למיקום מסוים ברשימה לפי אינדקס נתון. הנה דוגמאות לשתי הפונקציות:

הסרת איברים מהרשימה#

בפייתון ישנם שתי פונקציות להסרת איברים מרשימה: הפונקציה pop מסירה ומחזירה את האיבר האחרון ברשימה כברירת מחדל, או איבר מסוים אם מספר האינדקס מועבר. הפונקציה remove מסירה את ההופעה הראשונה של איבר מסוים ולא מחזירה כלום. הנה דוגמאות לשני הפונקציות:

מיון רשימות#

פונקציית sort משמשת למיון רשימה. היא מאפשרת לנו לסדר את האיברים ברשימה בסדר עולה. הנה דוגמה:

תרגיל#

קח רשימה של מספרים שלמים כקלט מהמשתמש אחד אחד. כתוב קוד שיבצע את המשימות הבאות ברשימה:

  • הוסף 5 לרשימה והדפיס את מצב הרשימה הנוכחי.
  • הסר את המופע הראשון של 3 מהרשימה, אם הוא קיים. בכל מקרה הדפס את מצב הרשימה הנוכחי.
  • מיין את הרשימה בסדר עולה והדפיס את מצב הרשימה הנוכחי.
  • הוסף לסוף הרשימה את המספרים [10, 11, 12]
  • אם המספר 7 נמצא ברשימה, מצא את האינדקס שלו והדפיס אותו. אחרת, הדפיסו הודעה מתאימה.

פלט לדוגמה:

Enter a list of integers (type 'done' to finish)
next number (or 'done' to finish): 1
next number (or 'done' to finish): 2
next number (or 'done' to finish): 3
next number (or 'done' to finish): 4
next number (or 'done' to finish): done
List state: [1, 2, 3, 4, 5]
List state: [1, 2, 4, 5]
List state: [1, 2, 4, 5]
Final list: [1, 2, 4, 5, 10, 11, 12]
Index of 7: Not in list