טופל tuple
חוץ מזה שזה אובייקט עם שם מוזר, שחלק הוגים אותו כמו טאפל (לדעתי בטעות אבל אם למישהו יש דיבור עם חידו רוסום שיעדכן בפורום), זו צורה פשוטה יותר של ארגון מידע הוא בצורה של רשימה מיוחדת הקרויה טופל. זו בעצם רשימה של איברים שההבדל בינה לבין רשימה הוא שלא ניתן לבצע ב tuple שינויים, גוף כזה מכונה בפייתון immutable. הטופל מסומן בסוגריים עגולים –
tup=(1,2,3,4)
print (tup)
>>>
(1, 2, 3, 4)
אפשר להדפיס איבר אחד מתוך הטופל –
tup=(1,2,3,4)
print (tup[1])
>>>
2
אנו רואים שלמרות שטופל מצוין באמצעות סוגריים עגולים, עדיין כדי להדפיס חלקים ממנו אנו משתמשים בסוגרים מרובעים. כך למשל אנו יכולים לבקש להדפיס את כל הטופל מהסוף להתחלה –
tup=(1,2,3,4)
print (tup[::-1])
>>>
(4,3,2,1)
המשמעות של ([::]print(tup היא הדפס את כל האיברים בטופל מהתחלה עד הסוף, וכאשר מוספים פרמטר מספרי לאחר הנקודות אזי ההדפסה מתחילה ממיקום האיבר הנקוב בפרמטר כאשר כל פעם מצטרף איבר הגדול ב -1 מאותו פרמטר, כלומר מתחילים באיבר -1 לאחר מכן איבר -2 וכו' כך מתקדמים מהסוף להתחלה.
ראוי לשים לב שאנו לא משנים את הטופל – הוא אינו בר שינוי, אנו רק משנים את סדר ההדפסה מתוך הטופל.
למה צריך את זה ? לעיתים אנו רוצים להגן על מידע מפני שינוי על מנת שלא יבוצע בו בטעות שינוי שיהרוס אותו. לכן פקודות כמו pop או append אינם ישימות לטופל שכן אלה פקודות המשנות את הרשימה.
אנו יכולים גם למזג שני טופלים וליצור טופל שלישי -
x=(1,2,3)
y=(4,5,6)
z=(x+y)
print(z)
>>>
(1, 2, 3, 4, 5, 6)