最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python元組的可變與不可變問題

 更新時間:2022年12月23日 10:58:25   作者:馬馬也  
這篇文章主要介紹了python元組的可變與不可變問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

python元組的可變與不可變

學(xué)過python的人都知道有一種數(shù)據(jù)類型叫做元組,而元組與列表最重要的區(qū)別就在于元組一經(jīng)定義就不能改變其內(nèi)容,但元組中的內(nèi)容真的是完全不可變的嗎,看了下面這段代碼想必你也會產(chǎn)生這樣的疑問.

代碼如下:

tuple = (1, 2, 3, [1, 4, 7])
print(tuple)
tuple[3][2] = 100
print(tuple)

在編譯器上運行上述代碼,結(jié)果如下:

從結(jié)果來看,元組中數(shù)據(jù)已經(jīng)產(chǎn)生了變化,那元組還是不可變的嗎,我們下面就從內(nèi)存來解釋元組的可變與不可變.

上面的圖就是內(nèi)存圖,元組和列表都是引用數(shù)據(jù)類型,其內(nèi)存空間存放的元素存放位置的地址值,所謂元組的不可變指的是元組所指向的內(nèi)存中的內(nèi)同不可變,在上圖中體現(xiàn)的是1,2,3和0x200這四個值不可變,而對于0x200這個地址所指向的列表來說,其內(nèi)容是可以改變的.

為什么元組Tuple是不可變的,列表List是可變的

1.所謂元組的不可變指的是元組所指向的內(nèi)存中的內(nèi)容不可變

# 關(guān)于元組是不可變的
tupleA = (1, 2, 3, 4)
# tupleA[0] = 0 ?# 報錯 TypeError: 'tuple' object does not support item assignment 不支持修改元素
# 查看內(nèi)存地址 id()
print(id(tupleA))
tupleA = (1, 2, 3, 4)
print(id(tupleA))
tupleA = (0, 1, 2, 3)
print(id(tupleA))

輸出結(jié)果是: 

1960670738208
1960670738208
1960670737888

從以上實例可以看出,重新賦值的元組 tupleA,綁定到新的對象了,不是修改了原來的對象。

2.List 是可變的

#關(guān)于List是可變的
listA = [1, 2, 3]
print(id(listA))
listA[0] = 0
print(listA)
print(id(listA))
listA = [1, 2, 3]
print(id(listA))
listA = [1, 2, 4]
print(id(listA))

輸出結(jié)果是

2974141229248
[0, 2, 3]
2974141229248
2974141227968
2974141229248

從以上實例可以看出,重新賦值的列表listA,并未綁定到新的對象,而是修改了原來的對象。

  • 字典中的 key 必須是不可變的類型
  • int str tuple  是值類型 (是不可變的)
  • List set dict  是引用類型(是可變的) 

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 3行Python代碼實現(xiàn)圖像照片摳圖和換底色的方法

    3行Python代碼實現(xiàn)圖像照片摳圖和換底色的方法

    這篇文章主要介紹了3行Python代碼實現(xiàn)圖像照片摳圖和換底色的方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • python使用celery實現(xiàn)訂單超時取消

    python使用celery實現(xiàn)訂單超時取消

    這篇文章主要為大家詳細介紹了python使用celery實現(xiàn)訂單超時取消,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-03-03
  • python模擬登錄百度代碼分享(獲取百度貼吧等級)

    python模擬登錄百度代碼分享(獲取百度貼吧等級)

    python模擬登錄百度,實現(xiàn)了登錄并讀取百度關(guān)注貼吧列表,百度登錄還是有點麻煩的,由于用的ssl,所以要先獲取token,然后再登錄,這個用finddle2分析下,還是比較好解決的
    2013-12-12
  • Python實現(xiàn)異常值自動檢測的案例分享

    Python實現(xiàn)異常值自動檢測的案例分享

    在數(shù)據(jù)分析和機器學(xué)習(xí)中,異常值的檢測是一個關(guān)鍵步驟,它有助于識別數(shù)據(jù)中的異常模式和離群點,本文將介紹Python中異常值檢測的實戰(zhàn)案例,使用一些常見的技術(shù)和庫,為大家提供全面的示例代碼和詳細解釋
    2024-01-01
  • Django中STATIC_ROOT和STATIC_URL及STATICFILES_DIRS淺析

    Django中STATIC_ROOT和STATIC_URL及STATICFILES_DIRS淺析

    這篇文章主要給大家介紹了關(guān)于Django中STATIC_ROOT和STATIC_URL及STATICFILES_DIRS的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起看看吧
    2018-05-05
  • 解決python文件字符串轉(zhuǎn)列表時遇到空行的問題

    解決python文件字符串轉(zhuǎn)列表時遇到空行的問題

    下面小編就為大家?guī)硪黄鉀Qpython文件字符串轉(zhuǎn)列表時遇到空行的問題。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • 樹莓派采用socket方式文件傳輸(python)

    樹莓派采用socket方式文件傳輸(python)

    這篇文章主要為大家詳細介紹了樹莓派采用socket方式文件傳輸,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-06-06
  • Python曲線平滑的實現(xiàn)示例

    Python曲線平滑的實現(xiàn)示例

    本文主要介紹了Python曲線平滑的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-05-05
  • python的slice notation的特殊用法詳解

    python的slice notation的特殊用法詳解

    今天小編就為大家分享一篇python的slice notation的特殊用法詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • Python文件的操作處理詳解

    Python文件的操作處理詳解

    今天這篇文章給大家介紹Python文件的操作處理,文章內(nèi)容介紹的很詳細,有需要的可以參考借鑒,希望能夠給你帶來幫助
    2021-10-10

最新評論

乐至县| 始兴县| 文山县| 平遥县| 津市市| 邢台市| 依兰县| 昌乐县| 宕昌县| 温泉县| 玉龙| 盐山县| 巴彦县| 长沙市| 松潘县| 鹤庆县| 千阳县| 和政县| 达日县| 永昌县| 江达县| 瓮安县| 页游| 游戏| 彰化县| 西盟| 璧山县| 高唐县| 辽源市| 松桃| 宣威市| 邻水| 台中县| 金昌市| 紫金县| 涡阳县| 游戏| 崇州市| 衡阳市| 孝义市| 建水县|