對於每個變數,python都提供了這三個方法分別獲取變數的三個特徵,其中python的內建功能id(),記憶體位址不一樣,則id()後列印的結果不一樣,因為每乙個變數值都有其記憶體位址,而id是用來反映變數值在記憶體中的位置,記憶體位址不同則id不同。
copyx = 10
copyprint(x) # 獲取變數的變數值
copyprint(id(x)) # 獲取變數的id,可以理解成變數在記憶體中的位址
copyprint(type(x)) # 獲取變數的資料型別,下章會詳細介紹資料型別
copyx = 10
copyprint(x) # 獲取變數的變數值
copy10
copyname1 = 'egon'
name2 = 'nick'
copyprint(name1 == name2) # false
copyfalse
copyx = 11
y = x
z = 11
copyprint(x == y) # true
copytrue
copyprint(x is y) # true
copytrue
copyprint(x is z) # true,整數池的原因
copytrue
copyx = 257
z = 257
print(x is z) # false
copyfalse
其中在第一次列印print(x is z)
的時候就觸發了上一章講的整數池。這可以理解成python的優化機制,11的值本身不大,並且由於我們快速的再一次使用了11,再由於申請記憶體空間需要計算機開銷,因此python讓x和z都指向同乙個11。因為存不是目的,取才是目的,這樣進行優化的話並不會影響程式的執行 Python變數的三個特徵
對於每個變數,python都提供了這三個方法分別獲取變數的三個特徵,其中python的內建功能id 記憶體位址不一樣,則id 後列印的結果不一樣,因為每乙個變數值都有其記憶體位址,而id是用來反映變數值在記憶體中的位置,記憶體位址不同則id不同。x 10 print x 獲取變數的變數值 print...
020 Python變數的三個特徵
對於每個變數,python都提供了這三個方法分別獲取變數的三個特徵,其中python的內建功能id 記憶體位址不一樣,則id 後列印的結果不一樣,因為每乙個變數值都有其記憶體位址,而id是用來反映變數值在記憶體中的位置,記憶體位址不同則id不同 x 10print x 獲取變數的變數值 print ...
物件導向的三個特徵
1 封裝 封裝最好理解了。封裝是物件導向的特徵之一,是物件和類概念的主要特性。封裝,也就是把客觀事物封裝成抽象的類,並且類可以把自己的資料和方法只讓可信的類或者物件操作,對不可信的進行資訊隱藏。2 繼承 物件導向程式設計 oop 語言的乙個主要功能就是 繼承 繼承是指這樣一種能力 它可以使用現有類的...