פייתון/פייתון גרסה 3/משתנים: הבדלים בין גרסאות בדף

תוכן שנמחק תוכן שנוסף
Mathreturn (שיחה | תרומות)
Mathreturn (שיחה | תרומות)
שורה 100:
#העתק רדוד (shadow copy)- המשתנה החדש מאוחסן באותו תא זכרון של המשתנה המקורי ועל כן שינוים במשתנה החדש ישפיעו על המשתנה המקורי.
 
 
בכדי לדעת האם מדובר בהעתק עמוק או רדוד נעזר בפונקציית id שמחזירה את "מקום הזיכרון". נעזר בדוגמה שממחישה את ההבדלים בין אופרטור <code> == </code> לעומת <code> is </code>
 
מבחינת משתנים: השמה שומרת על כתובת המשתנה לעומת הצהרה המייצרת משתנה חדש בעל אותו העתק.
 
נעזר בדוגמה שגם ממחישה את ההבדלים בין אופרטור <code> == </code> לעומת <code> is </code>
 
<source lang = "python">:
#Declaration - creat a new variable
>>> a=400
>>> b=400
שורה 108 ⟵ 115:
>>> id(b)
89043920
 
# == vs is
>>> a==b
True
>>> a is b
False
 
# Assigning
>>> x=23423
>>> y=x
>>> id(x)
103332672
>>> id(y)
103332672
 
# == vs is
>>> x is y
True
>>> x ==y
True
</source>
 
שמו לב שפייתון מאחסנת מספרים נמוכים באותה כתובת ולכן עלולים להתבלבל בין סוגי העתקים:
<source lang = "python">
 
>>> a=1
>>> b=1