對於每個變數,python都提供了這三個方法分別獲取變數的三個特徵,其中python的內建功能id(),記憶體位址不一樣,則id()後列印的結果不一樣,因為每乙個變數值都有其記憶體位址,而id是用來反映變數值在記憶體中的位置,記憶體位址不同則id不同
x =
10print
(x)# 獲取變數的變數值
print(id
(x))
# 獲取變數的id,可以理解成變數在記憶體中的位址
print
(type
(x))
# 獲取變數的資料型別,下章會詳細介紹資料型別
x =
10print
(x)# 獲取變數的變數值
10
x =
10print
(x)# 獲取變數的變數值
10
x =
11y = x
z =11
print
(x == y)
# true
true
print
(x is y)
# true
true
print
(x is z)
# true,整數池的原因
true
x =257
z =257
print
(x is z)
# false
false
值相等的變數,id不一定相等
其中在第一次列印print(x is z)
的時候就觸發了上一章講的整數池。這可以理解成python的優化機制,11的值本身不大,並且由於我們快速的再一次使用了11,再由於申請記憶體空間需要計算機開銷,因此python讓x和z都指向同乙個11。因為存不是目的,取才是目的,這樣進行優化的話並不會影響程式的執行。
Python變數的三個特徵
對於每個變數,python都提供了這三個方法分別獲取變數的三個特徵,其中python的內建功能id 記憶體位址不一樣,則id 後列印的結果不一樣,因為每乙個變數值都有其記憶體位址,而id是用來反映變數值在記憶體中的位置,記憶體位址不同則id不同。x 10 print x 獲取變數的變數值 print...
變數的三個特徵
對於每個變數,python都提供了這三個方法分別獲取變數的三個特徵,其中python的內建功能id 記憶體位址不一樣,則id 後列印的結果不一樣,因為每乙個變數值都有其記憶體位址,而id是用來反映變數值在記憶體中的位置,記憶體位址不同則id不同。copyx 10 copyprint x 獲取變數的變...
List Map Set三個介面,訪問元素的特點
首先,list 與set 具有相似性,它們都是單列元素的集合,所以,它們有乙個功共同的父介面,叫 collection set 裡面不允許有重複的元素,所謂重複,即不能有兩個相等 注意,不是僅僅是相同 的物件 即假設 set集合中有了乙個 a物件,現在我要向 set集合再存入乙個 b物件,但 b物件...