שאלות בנוגע לדוגמא של tuple

למשל עבור השורה הרביעית של רשימת הסטודנטים במקום ה-0:

  1. איתמר בן 50. אבל אתם לא יודעים שהוא שנה ב’. כלומר שנה הבאה הוא בן 51 ועדיין סטודנט. אז למה הוא כtuple אם נצטרך לדרוס את האיבר של הרשימה כדי לעדכן את גילו (students_and_age[0]=(Itamar, 51 בשנה הבאה.
  2. מה שמוביל אותי לשאלה השנייה. אם אפשר לדרוס איבר tuple בתוך רשימה, למה לשים אותו מראש כtuple.

תודה מראש

  1. לגבי למה לשמור במקרה הזה (או בכלל) מידע במבנה immutable – זו תורה שלמה שמתחילה מעיצוב קוד פשוט ועד לארכיטקטורת מערכות (להרחבה ניתן לקרוא על Immutable systems). לגבי השאלה הספציפית – זה יכול לקרות במקרה שנרצה לשמור מידע שקבוע עבורנו. נניח, אם התוכנה שלי היא ספר המחזור של שנת 2020, ואלו שמותיהם וגיליהם של הסטודנטים.
  2. למה לא? זאת אומרת, למה לדעתך השאלה שלך לא שקולה ל"למה לבחור tuple אי פעם"?
לייק 1

דווקא נשמע לי מעולה שיש אפשרות למבנה כזה שלא ניתן לשנות אותו מהרגע שהוא נוצר.

יש המון דברים שהם קבועים בחיים האלה למה שלא נרצה לשמור אותם ככאלה.
תעודת זהות, שנת לידה, מהירות האור, כוח המשיכה וכו …

לייק 1

בהרבה שפות תכנות יש את מילת המפתח const שמכריחה דברים להיות קבועים.
מי שכתב את פייתון אהב להגיד “We are all adults here” ושנא להכניס לשפה פיצ’רים ש"מכריחים" דברים או מגבילים את המתכנת במהלך ריצת הקוד.

2 לייקים

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

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

זה ברשימה כי רוצים לרכז את כל הנתונים ברשימה.
ושיהיה נוח לעבוד עם זה.

אני לא מבין איפה תה מסתבך עם הדוגמאות

לייק 1

תודה. לא מסתבך. שואל כדי להבין לעומק, זה מה שאמורים לעשות לא?

בוודאי :slight_smile:
לא השתמשתי במילה מסתבך בקטע רע או משו כזה, מצטער אם זה מה שהבנת ממני.

לייק 1