列表和變量名字

python的變量就像一個標簽,就一個名字而已,對變量賦值就像把名字貼在值上面

>>> a = 3
>>> b = a
>>> c = b
>>> print(id(a),id(b),id(c))
507098848 507098848 507098848
>>> c = 6
>>> print(id(a),id(b),id(c))
507098848 507098848 507098944
>>> list1=[1,2]
>>> list2=list1
>>> list3=list2
>>> print(id(list1),id(list2),id(list3))
50892424 50892424 50892424
>>> list2.append(3)
>>> print(id(list1),id(list2),id(list3))
50892424 50892424 50892424
>>> 
>>> print(a,b,c)
3 3 6
>>> print(list1,list2,list3)
[1, 2, 3] [1, 2, 3] [1, 2, 3]
>>> 

畫圖說明:


image.png

還需要說明的是,如果值相同字符串、列表、浮點型、類都是新開辟一塊空間,而int類型如果值相同就是指向同一個地址

>>> a="hello world"
>>> b="hello world"
>>> print(id(a),id(b))
52433648 42100016
>>> a=26
>>> b=26
>>> print(id(a),id(b))
507099584 507099584
>>> a=[1,2,3,4,5]
>>> b=[1,2,3,4,5]
>>> print(id(a),id(b))
51856264 52274888
>>> a=int(13)
>>> b=int(13)
>>> print(id(a),id(b))
507099168 507099168
>>> a=0.001
>>> b=0.001
>>> print(id(a),id(b))
34313536 34313704
>>> class C:
    pass
>>> c1=C()
>>> c2=C()
>>> print(id(c1),id(c2))
52430888 52301664
>>> class C:
    def __init__(self,num):
        self.value = num
>>> a=C(26)
>>> b=C(26)
>>> print(id(a),id(b))
52431112 52431056
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容