פייתון/פייתון גרסה 3/משתנים
משתנה
[עריכה]משתנה (Variable) כלי באמצעותו אנו מגדירים (ובתכנות, פעולת השמה assignment) שם חדש לערך מסוים.
המשתנה מורכב משם אחריו מופיע אופרטור השמה (הסימון = ) ולבסוף ערכו. דוגמה,
>>> a = 3
>>> a
3
>>>a='alex'
>>>a
'alex'
>>>a='+'
>>>a
'+'
שם המשתנה בדוגמה היא האות . אחרי שם המשתנה אנו רואים אופרטור ההשמה ולבסוף את הערכים שמקבל המשתנה שלנו ().בדוגמה השנייה והשלישית אנו רואים כי ניתן גם להשם משתנים עבור מחרוזות.
חסכון בהקלדה
[עריכה]שימוש במשתנים עוזר לנו לחסוך זמן בהקלדה:
>>> a = 2 + 2
>>> a + 3
7
>>> 2 * a + 5
13
על אף שלרב הם משמשים לשמירת מידע שהתוכנה עושה בו שימוש במהלך ריצתה ומשנה אותו ולאחר מכן רוצה לגשת אליו בהמשך מספר פעמיים או כדי לשמור מידע שהמשתמש נתן לנו ואו מעוניים לשמור אותו – כדי להשתמש בו בהמשך
כללים ליצירת משתנים
[עריכה]- המשתנים יכולים להכיל בתוכם את כל הטיפוסים הקיימים.
- שם המשתנה יכול להיות מורכב מצירופי אותיות ומספרים אך אינו יכול להתחיל בספרה.
- נהוג להשתמש באותיות קטנות (Lower case) עבור שם המשתנה.
- אם משתמשים באותיות גדולות זה עבור משתנים קבועים כמו ומספרי קסם
- נהוג לתת שם בעל משמעות כמו sum, total בכדי להקל על המתכנתים הבאים לקרוא את הקוד.
- לא ניתן לייצר רווח בשם המשתנה ועל כן הפרדת מילים מתבצעת באמצעות קו תחתון. דוגמה, נרשום "color_red" ולא "color red"
- כאשר רוצים לתת שם עם מספר מילים ללא רווח מקובל להתחיל את האות הראשונה, החל מהמילה השניה באות גדולה, לדוגמה, numberOfColors
- לא ניתן להשתמש בשמות השמורים במערכת (keywords) כמו if, and, print, וכמו כן גם מספרים או מחרוזות (מכיוון שאי ־ אפשר לשנות את מהותו של מספר)
הערה: פיתון היא תכנה רגישה ("case sensitive") אשר אינה מזהה שם של משתנה אם האותיות וגודלן אינו מדויק. למשל Number ו-number אינם נחשבים אותם המשתנים.
השמה של משתנה אחר בתוך משתנה
[עריכה]יש הבחנה בין שתי פעולות בפייתון: הצהרה והשמה.
- הצהרה (Declaration) היא הגדרה של משתנה לראשונה.
- השמה (Assignment) היא פעולה בה מגדירים מחדש משתנה בעל אותו ערך:
אפשר להשים יותר משם אחד לאותו משתנה. לדוגמה:
>>> a = 2
>>> b = a
>>>b
2
a הוא שם לעצם 2, ו-b הוא שם לעצם של a, כלומר גם כן 2.
הגדרה מחודשת של שם המשתנה
[עריכה]לאחר ששם נקשר לעצם, אפשר לקשור אותו לעצם אחר להבדיל ממספרים שנחשבים בלתי ניתנים לשינוי ("immutable data"). השם מפסיק להיות שמו של העצם הקודם, ועובר להיות שמו של העצם הבא. לדוגמה:
>>> a = 2
>>> a = 3
>>> a
3
תחילה a מוגדר כ-2, ולאחר מכן מוגדר כ- 3. כאשר אנו רושמים את שם המשתנה מתקבל ההגדרה ההאחרונה של המשתנה דהינו כלומר הגדרה מחודשת של משתנה מוחקת את הקודמת ומייצרת הגדרה חדשה. אפשר לחזור על כך מספר בלתי מוגבל של פעמים ולהחליף את ערכו של המשתנה בין טיפוסים שונים.
מאחר ששפת הפייתון זוכרת את ההגדרה האחרונה של משתנה ניתן להגדיר משתנה באמצעות המשתנה שלו עצמו.
>>> a = 2
>>> a = a + 3
>>>a
5
נוכל לסכם כי קיימות שתי פעולות שמבצע המשתנה:
- הצבת הערך של משתנה
>>> a=3
>>> a
3
- להניח את ערכו
>>> b=a+2
>>> b
5
לחלופין, ניתן להשתמש באופרטור =+ או =-:
>>> b=1
>>> b+=1
>>> b
2
ליטרלים
[עריכה]לעיתים אנו מעוניינים בערך עצמו של המשתנה ולא בכינויו. במקרים כאלו אנו למעשה מחפשים את הליטרל של המשתנה.
ליטרלים (Literally דהינו "פשוטו כמשמעו") הם טיפוסים הכתובים בצורתם המפורשת. במילים אחרות אנו לא רוצים את שם המשתנה שלהם אלא לייצוג ערכם המלא.
דוגמה, הליטרל המיוצג בסקריפט הוא מסוג int
>>> a = 1
>>> a + 3
4
הינו המספר
פעולה ארוכה (רשומה)
[עריכה]פייתון מאפשרת לקשר בו-זמנית מספר שמות לעצמים בהתאמה, לדוגמה כך:
>>> a, b, c = 2, 3, 4
יכולת זו מאפשרת לבצע דברים נחמדים, כמו החלפה בין שמות. לדוגמה:
>>> a = 2
>>> b = 3
>>> a, b = b, a
השורה הראשונה מקשרת בין השם a לעצם 2, השורה השניה מקשרת בין השם b לעצם 3, והשורה השלישית מקשרת בין a ו-b לבין העצמים של השמות b ו-a, ולכן למעשה מחליפה בין השמות. נוכל לבדוק זאת:
>>> a
3
>>> b
2
נדון בכך לעומק כאשר נדבר על n-יות וקישורים.