亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

tuple(元組)

另一種有序列表叫元組:tuple 。tuple 和 list 非常類似,但是 tuple 一旦初始化就不能修改。那么不能修改是指什么意思呢?

tuple 不可變是指當(dāng)你創(chuàng)建了 tuple 時(shí)候,它就不能改變了,也就是說它也沒有 append(),insert() 這樣的方法,但它也有獲取某個(gè)索引值的方法,但是不能賦值。那么為什么要有 tuple 呢?那是因?yàn)?tuple 是不可變的,所以代碼更安全。所以建議能用 tuple 代替 list 就盡量用 tuple 。

1、創(chuàng)建 tuple(元組)

元組創(chuàng)建很簡單,只需要在括號中添加元素,并使用逗號隔開即可。

tuple1=('兩點(diǎn)水','twowter','liangdianshui',123,456)
tuple2='兩點(diǎn)水','twowter','liangdianshui',123,456

創(chuàng)建空元組

tuple3=()

元組中只包含一個(gè)元素時(shí),需要在元素后面添加逗號

tuple4=(123,)

如果不加逗號,創(chuàng)建出來的就不是 tuple (元組),而是指 123 這個(gè)數(shù)了,這是因?yàn)槔ㄌ?()既可以表示 tuple,又可以表示數(shù)學(xué)公式中的小括號,這就產(chǎn)生了歧義,因此,Python 規(guī)定,這種情況下,按小括號進(jìn)行計(jì)算,計(jì)算結(jié)果自然是 123 。具體看下圖 tuple4 和 tuple5 的輸出值

bf243cb95eaf948005abb0d83e6a097.png

2、tuple(元組)的索引

元組下標(biāo)索引從0開始,可以進(jìn)行截取,組合等。

3、訪問 tuple (元組)

tuple(元組)可以使用下標(biāo)索引來訪問元組中的值

#-*-coding:utf-8-*-
tuple1=('兩點(diǎn)水','twowter','liangdianshui',123,456)
tuple2='兩點(diǎn)水','twowter','liangdianshui',123,456
print(tuple1[1])
print(tuple2[0])

輸出的結(jié)果:

48ff94816a44ce16f7e3df56c7542a8.png

4、修改 tuple (元組)

上面不是花了一大段來說 tuple 是不可變的嗎?這里怎么又來修改 tuple (元組) 了。那是因?yàn)樵M中的元素值是不允許修改的,但我們可以對元組進(jìn)行連接組合,還有通過修改其他列表的值從而影響 tuple 的值。

具體看下面的這個(gè)例子:

#-*-coding:utf-8-*-
list1=[123,456]
tuple1=('兩點(diǎn)水','twowater','liangdianshui',list1)
print(tuple1)
list1[0]=789
list1[1]=100
print(tuple1)

輸出的結(jié)果:

('兩點(diǎn)水', 'twowater', 'liangdianshui', [123, 456])
('兩點(diǎn)水', 'twowater', 'liangdianshui', [789, 100])

可以看到,兩次輸出的 tuple 值是變了的。我們看看 tuple1 的存儲(chǔ)是怎樣的。

修改tuple流程圖

可以看到,tuple1 有四個(gè)元素,最后一個(gè)元素是一個(gè) List ,List 列表里有兩個(gè)元素,當(dāng)我們把 List 列表中的兩個(gè)元素 124 和 456 修改為 789 和 100 的時(shí)候,從輸出來的 tuple1 的值來看,好像確實(shí)是改變了,但其實(shí)變的不是 tuple 的元素,而是 list 的元素。tuple 一開始指向的 list 并沒有改成別的 list,所以,tuple 所謂的“不變”是說,tuple 的每個(gè)元素,指向永遠(yuǎn)不變。注意是 tupe1 中的第四個(gè)元素還是指向原來的 list ,是沒有變的。

5、刪除 tuple (元組)

tuple 元組中的元素值是不允許刪除的,但我們可以使用 del 語句來刪除整個(gè)元組

#-*-coding:utf-8-*-
tuple1=('兩點(diǎn)水','twowter','liangdianshui',[123,456])
print(tuple1)
del tuple1

6、tuple (元組)運(yùn)算符

與字符串一樣,元組之間可以使用 + 號和 * 號進(jìn)行運(yùn)算。這就意味著他們可以組合和復(fù)制,運(yùn)算后會(huì)生成一個(gè)新的元組。

5accbab73a1eaa35b4c8b5f7c9fb8d4.png

7、元組內(nèi)置函數(shù)

fbf38e362db6330097b606315b122f2.png

繼續(xù)學(xué)習(xí)
||
提交重置代碼