久久久精品2019免费观看_亚洲国产精品成人久久久_69国产成人综合久久精品91_国产精品久久精品视

Python 元組類(lèi)型1

這章我們學(xué)習(xí)一個(gè)新的數(shù)據(jù)類(lèi)型,元組類(lèi)型。簡(jiǎn)單來(lái)說(shuō),元組就是一個(gè)不可變的列表,言外之意就是元組可以和列表一樣,按索引進(jìn)行取值,但是不能對(duì)元組進(jìn)行修改。

定義元組的方法也很簡(jiǎn)單,和列表相似,只是定義列表需要中括號(hào),元組只需要小括號(hào),然后用逗號(hào)分隔開(kāi)多個(gè)任意類(lèi)型的值。

元組里面可以放多個(gè)任意類(lèi)型的值,就說(shuō)明整型。浮點(diǎn)型、字符串都可以放里面,還可以在里面嵌套字典,字符串,甚至可以嵌套元組?,F(xiàn)在直接打印一下它和它的type。

t = (1, 1.2, 'ccc', [4, 5, 6], {'a': 1, 'b': 2, 'c': 3}, (7, 8, 9))
print(type(t))

結(jié)果類(lèi)型就是tuple,這也說(shuō)明了我們定義元組的時(shí)候,它背后其實(shí)調(diào)用的是tuple加括號(hào)這個(gè)方法,來(lái)幫我們創(chuàng)建這個(gè)元組的。

但是這里你需要注意一個(gè)問(wèn)題,由于定義元組使用小括號(hào)定義的,小括號(hào)在Python里面太特殊了,不管是調(diào)用python里的各種功能,還是做數(shù)學(xué)運(yùn)算和邏輯運(yùn)算的時(shí)候都會(huì)用到小括號(hào)。

我定義一個(gè)元組,然后里面只有一個(gè)值,再打印類(lèi)型。

a = (88)
print(type(a))

結(jié)果打印出來(lái)的類(lèi)型是int類(lèi)型,不是tuple類(lèi)型。這就是小括號(hào)的特殊之處,它有包含的意思。所以當(dāng)我們定義一個(gè)元組,而它只有一個(gè)元素的時(shí)候,需要在最后加上逗號(hào)。

還是上面的代碼,我們加上逗號(hào)打印看看。

a = (88,)
print(type(a))

結(jié)果類(lèi)型就變成元組類(lèi)型了。

剛剛我們說(shuō)了,元組是不可變類(lèi)型,就是說(shuō)我們不能修改元組里的元素。

我現(xiàn)在重新定義一個(gè)元組。

x = (33, 'f', 2.4

根據(jù)我們前面學(xué)的知識(shí),我們應(yīng)該知道列表和字典這些容器類(lèi)型里面都不是直接存的值,而是存的值的內(nèi)存地址。

對(duì)于咱們學(xué)的元組來(lái)說(shuō),它也是容器類(lèi)型,而它存值的費(fèi)那事也是和列表字典一樣,存的是內(nèi)存地址。

也就是說(shuō)對(duì)這個(gè)元組來(lái)說(shuō):

0號(hào)索引對(duì)應(yīng)33的內(nèi)存地址–》指向了對(duì)應(yīng)的值33;

1號(hào)索引對(duì)應(yīng)f的內(nèi)存地址–》指向了對(duì)應(yīng)的值f;

2號(hào)索引對(duì)應(yīng)2.4的內(nèi)存地址–》指向了對(duì)應(yīng)的值2.4。

這是我們前面學(xué)過(guò)的,理解起來(lái)沒(méi)問(wèn)題吧?

剛剛我們說(shuō)的元組不可變其實(shí)就是指得是里面的內(nèi)存地址不可變,一旦我們定義好了這個(gè)元組,那么它里面存的這些內(nèi)存地址就不能發(fā)生變化了。

換而言之就是只要元組里存的內(nèi)存地址不變,那就意味著這個(gè)元組沒(méi)有發(fā)生任何變化。

未經(jīng)允許不得轉(zhuǎn)載:445IT之家 » Python 元組類(lèi)型1

贊 (0) 打賞

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

微信掃一掃打賞