12 python的資料型別,可變不可變,有序無序

2021-09-27 01:34:53 字數 3187 閱讀 2343

**可變與不可變:**不可變資料型別更改後位址發生改變,可變資料型別更改後位址不發生改變

在python中資料型別有:整型(int,float,complex,boolue),字串,元組,集合,列表,字典。

我們可以發現,當資料發生改變後,變數的記憶體位址發生了改變,那麼整型就是不可變資料型別。

b =

'djx'

print(id

(b),

type

(b))

b ='djx1996'

print(id

(b),

type

(b))

535056476344

<

class

'str'

>

535056476624

<

class

'str'

>

我們可以發現,當資料發生改變後,變數的記憶體位址發生了改變,那麼字串就是不可變資料型別。

元組被稱為唯讀列表,即資料可以被查詢,但不能被修改,但是我們可以在元組的元素中存放乙個列表,通過更改列表的值來檢視元組是屬於可變還是不可變。

c1 =

['1'

,'2'

]c =(1

,2,c1)

print

(c,id

(c),

type

(c))

c1[1]=

'djx'

print

(c,id

(c),

type

(c))

result:(1

,2,[

'1',

'2']

)386030735432

<

class

'tuple'

>(1

,2,[

'1',

'djx'])

386030735432

<

class

'tuple'

>

我們可以發現,雖然元組資料發生改變,但是記憶體位址沒有發生了改變,但是我們不可以以此來判定元組就是可變資料型別。我們回頭仔細想想元組的定義就是不可變的。我們修改了元組中列表的值,但是因為列表是可變資料型別,所以雖然在列表中更改了值,但是列表的位址沒有改變,列表在元組中的位址的值沒有改變,所以也就意味著元組沒有發生變化。我們就可以認為元組是不可變資料型別,因為元組是不可變的。

集合我們常用來進行去重和關係運算,集合是無序的。

s =print

(s,type

(s),

id(s)

)s.add(

'djx'

)print

(s,type

(s),

id(s)

)result:

<

class

'set'

>

870405285032

<

class

'set'

>

870405285032

我們可以發現,雖然集合資料發生改變,但是記憶體位址沒有改變,那麼集合就是可變資料型別。

列表是python中的基礎資料型別之一,其他語言中也有類似於列表的資料型別,比如js中叫陣列,它是以[

]括起來,每個元素以逗號隔開,而且它裡面可以存放各種資料型別。

list=[

1,'q',

'qwer'

,true

]print

(list

,type

(list),

id(list))

list

'djx'

)print

(list

,type

(list),

id(list))

result:[1

,'q'

,'qwer'

,true

]<

class

'list'

>

808140621128[1

,'q'

,'qwer'

,true

,'djx'

]<

class

'list'

>

808140621128

我們可以發現,雖然列表資料發生改變,但是記憶體位址沒有發生了改變,那麼列表就是可變資料型別。

字典是python中唯一的對映型別,採用鍵值對(key-value)的形式儲存資料

字典的key值可以是整型,字串,元組,但是不可以是列表,集合,字典。鍵可以是任何值。

鍵不可重複,值可重複。鍵若重複會被覆蓋

tuple=(

1)dic =

d =print

(d,type

(d),

id(d))d[

'key4']=

'haha'

print

(d,type

(d),

id(d)

)result:

<

class

'dict'

>

256310956320

<

class

'dict'

>

256310956320

我們可以發現,雖然字典資料發生改變,但是記憶體位址沒有發生了改變,那麼字典就是可變資料型別。

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資料型別 可變資料型別和不可變資料型別

在python中資料型別包含以下幾類 1.數字型別 number 整型 int 浮點型 float 複數 complex 2.字串型別 string 3.列表 list 4.集合 set 5.元組 tuple 6.字典 dict 上面的型別中屬於可變型別的是 dict,list,set 屬於不可變型...