日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python不可变的列表被称为_【Python学习】可变类型和不可变类型

發布時間:2025/4/5 python 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python不可变的列表被称为_【Python学习】可变类型和不可变类型 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一.可變類型與不可變類型的特點

1.不可變數據類型

不可變數據類型在第一次聲明賦值聲明的時候, 會在內存中開辟一塊空間, 用來存放這個變量被賦的值,? 而這個變量實際上存儲的, 并不是被賦予的這個值, 而是存放這個值所在空間的內存地址, 通過這個地址, 變量就可以在內存中取出數據了. 所謂不可變就是說, 我們不能改變這個數據在內存中的值, 所以當我們改變這個變量的賦值時, 只是在內存中重新開辟了一塊空間, 將這一條新的數據存放在這一個新的內存地址里, 而原來的那個變量就不在引用原數據的內存地址而轉為引用新數據的內存地址了.

舉例子:

>>> x = 18

>>> id(x)

4497811200

>>> id(18)

4497811200

>>> x = 19

>>> id(x)

4497811232

>>> id(18)

4497811200

>>> y = 18

>>> id(y)

4497811200

>>>

一開始x = 18,開辟一塊地址為4497811200的內存,即18對應的地址為4497811200,后來x = 19 ,重新開辟一塊地址為4497811232的內存來放19,可以看到不變的意思是指18,和19在內存中的地址不會改變,將18賦值給y時,y指向的地址即為4497811200。

1.可變數據類型

結合不可變數據類型,可變數據類型就很好理解來,可變數據類型是指變量所指向的內存地址處的值是可以被改變的。

>>> x = [1,2,3]

>>> id(x)

4501838920

>>> y = [1,2,3]

>>> z = [1,2,3]

>>> id(y)

4501838600

>>> id(z)

4501838664

從另外一個角度來看:

可變類型:當該數據類型的對應變量的值發生了改變,那么它對應的內存地址也會發生改變,對于這種數據類型,就稱不可變數據類型。

可變數據類型:當該數據類型的對應變量的值發生了改變,那么它對應的內存地址不發生改變,對于這種數據類型,就稱可變數據類型。

#a的值改變了,a對應的內存地址也改變了

>>> a=1

>>> id(a)

4497810656

>>> a = 2

>>> id(2)

4497810688

#直接對a操作,相當于拷貝了一份a的值,在其他內存地址操作,a的值不變

>>> a+1

3

>>> id(a)

4497810688

>>> a

2

#b的值改變了,b對應的內存地址不變,第一次給b賦值的時候,給b劃分一塊內存空間,該空間就不變了

>>> b = [1,2,3]

>>> id(b)

4501839496

#直接對b操作,b的值改變,b指向的內存空間不變

>>> b.append(4)

>>> id(b)

4501839496

>>> b

[1, 2, 3, 4]

>>>

二.哪些是可變類型哪些是不可變類型

不可變:Number(數字)、String(字符串)、Tuple(元組)。

#整型

a = 1

print(id(a), type(a))

a = 2

print(id(a), type(a))

# 4361254304

# 4361254336

#字符串

b = 'anne'

print(id(b),type(b))

b = 'anne1995'

print(id(b),type(b))

# 4363638744

# 4363684784

#元組

c1 = ['1','2']

c = (1,2,c1)

print(c,id(c),type(c))

c1[1] = 'djx'

print(c,id(c),type(c))

# (1, 2, ['1', '2']) 4363948248

# (1, 2, ['1', 'djx']) 4363948248

注意:此時元組的值發生了變化而內存地址沒變,但我們依然稱元組為不可變類型,為什么呢?其實改的是元組中的列表,列表是可變類型,改變了值后地址依然不變。但是元組的定義就是不可變的,

元組被稱為只讀列表,即數據可以被查詢,但不能被修改。

可以變:Set(集合)、List(列表)、Dictionary(字典)。

#集合

s = {1, 'd', '34', '1', 1}

print(s, type(s), id(s))

s.add('djx')

print(s, type(s), id(s))

# {1, '1', 'd', '34'} 4401385256

# {1, '1', '34', 'd', 'djx'} 4401385256

#列表

list = [1,'q','qwer',True]

print(list,type(list),id(list))

list.append('djx')

print(list,type(list),id(list))

# [1, 'q', 'qwer', True] 4401113608

# [1, 'q', 'qwer', True, 'djx'] 4401113608

#字典

tuple = (1)

dic = {1:2}

d = { tuple:1,'key2':'djx','key3':'li'}

print(d,type(d),id(d))

d['key4'] = 'haha'

print(d,type(d),id(d))

# {1: 1, 'key2': 'djx', 'key3': 'li'} 4401075976

# {1: 1, 'key2': 'djx', 'key3': 'li', 'key4': 'haha'} 4401075976

總結

以上是生活随笔為你收集整理的python不可变的列表被称为_【Python学习】可变类型和不可变类型的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 免费看污黄网站在线观看 | 成年人一级黄色片 | 无码内射中文字幕岛国片 | 色老头在线一区二区三区 | 草草影院网址 | 久久1024| 中文字幕精品无码亚 | 俄罗斯毛片 | 国产91清纯白嫩初高中在线观看 | 1000部做爰免费视频 | 超碰在线免费看 | 亚洲乱码中文字幕 | 国产伦精品一区二区三区视频女 | 毛片视频网站 | 东京热加勒比无码少妇 | 人妖性生活视频 | 男人天堂综合网 | 色综合久久天天综合网 | 黄色资源在线观看 | 综合色天天 | xxx视频网站| 丁香婷婷综合激情五月色 | 超碰97人人在线 | 人人干夜夜操 | 国产精品99| 国产精品影院在线观看 | jizzjizz美国| 影音先锋在线观看视频 | 大黄毛片 | 免费在线黄色网 | 精品久久国产视频 | 国产不卡av在线 | 自拍偷拍第一页 | 国产成人精品毛片 | 欧美呦交 | 欧美变态口味重另类 | sao虎视频在线精品永久 | 欧美精品黑人 | 国产艳情片 | 久久这里只有精品8 | 朝桐光一区二区 | www.久久久久久久久久 | 综合国产一区 | 在线免费国产视频 | 明星双性精跪趴灌满h | 日韩www | 国产偷国产偷av亚洲清高 | 奇米网狠狠干 | 国产农村妇女毛片精品久久 | 日韩欧美一区二区三区四区 | 国产精品99精品无码视 | r级无码视频在线观看 | 欧美小视频在线观看 | 爱情岛论坛永久入址在线 | 精品国产96亚洲一区二区三区 | 日韩美女三级 | 少妇又色又紧又大爽又刺激 | 色欲亚洲Av无码精品天堂 | 国产一区二区不卡 | 欧美xxxxx精品| 轻轻色在线观看 | 欧洲裸体片| 亚洲天堂免费av | 亚洲女同女同女同女同女同69 | 在线观看超碰 | 久久人人干 | 国产欧美久久久精品免费 | 亚洲一区二区三区影视 | 亚洲人xxx | 一区二区三区在线看 | 鬼眼 | 欧美 唯美 清纯 偷拍 | 亚洲一级无毛 | 日本黄页网址 | 三女同志亚洲人狂欢 | 亚洲va久久久噜噜噜无码久久 | 不卡av网 | 日本少妇全体裸体洗澡 | 亚洲国产精品久久AV | 香蕉视频首页 | 国产毛片久久久久 | 加勒比一区在线 | 成人无码视频 | 女人脱下裤子让男人捅 | 国产又粗又猛又黄视频 | 欧美做受 | 欧美看片 | 中文字幕第23页 | 国产自偷自拍 | 亚洲视频99 | 91丨九色丨丰满 | 亚洲黄色片免费看 | 中文字幕在线乱 | 伊人网视频 | 日韩精品成人av | 欧美一区二区三区视频 | 婷婷伊人综合 | 国产私人影院 | 日韩三级黄|