可變資料型別(資料更改前後,記憶體id不變):列表,字典,集合
不可變資料型別(資料更改前後,記憶體id發生改變):數字[包括:整型,浮點型],字串,元組
分別對各種資料型別進行驗證:
.數字(int ,float):不可變資料型別
字串(str):不可變資料型別#資料型別是不允許改變的,這就意味著如果改變量字資料型別的值,將重新分配記憶體空間。
a =500
id(a)
>>
>
67005664
a =600
id(a)
>>
>
67006064
a =
'sss'
id(a)
>>
>
68010688
a ='sds'
id(a)
>>
>
68010848
#如果按索引修改字串,會報錯a[-
1]='n'
traceback (most recent call last)
: file ""
, line 1,in
typeerror:
'str'
object does not support item assignment
元組(tuple):不可變資料型別
#元組也是不可修改的,會報錯
a =(1,
2,3)
a[1]=
3traceback (most recent call last)
: file ""
, line 1,in
typeerror:
'tuple'
object does not support item assignment
列表(list):可變資料型別
字典(dict):可變資料型別#可以看到列表更改前後,其記憶體id並沒有發生改變,還是同乙個物件
list1 =[1
,2,3
]id(list1)
>>
>
68019336
list1[1]
=5id(list1)
>>
>
68019336
集合(set):可變資料型別#字典更改前後,id沒有發生改變
dict1 =
id(dict1)
>>
>
67936896
dict1[
'name']=
'lin'
id(dict1)
>>
>
67936896
#集合更改前後,id沒有發生改變
a =id
(a)>>
>
67789624
a.add(4)
id(a)
>>
>
67789624
python 可變資料型別 不可變資料型別
在python中,資料型別分為可變資料型別和不可變資料型別,不可變資料型別包括string,int,float,tuple,可變資料型別包括list,dict。所謂的可變與不可變,舉例如下 a test print a 0 t a 0 1 traceback most recent call las...
python 可變資料型別 不可變資料型別
在python中,資料型別分為可變資料型別和不可變資料型別,不可變資料型別包括string,int,float,tuple,可變資料型別包括list,dict。所謂的可變與不可變,舉例如下 a test print a 0 t a 0 1 traceback most recent call las...
python 可變資料型別和不可變資料型別
不可變資料型別更改後位址發生變化,可變資料型別更改後位址不發生變化。看 說話 a 1 int b string string c 1,2 tuple print type a id a print type b id b print type c id c a 1b 1 c 3 4 print a,...