在python不可變數(shù)據(jù)類型中,有一個(gè)比較重要的角色那就是元組( tuple )。如果某個(gè)對(duì)像被定義為元組類型,那么就意味著它的值不能被修改,除非重新定義一個(gè)新的對(duì)像。元組和列表常被放在一起進(jìn)行比較,它們都是序列,所以有許多相同的操作方法,但前者是不可變數(shù)據(jù)類型,后者是可變數(shù)據(jù)類型,從本質(zhì)上又并不相同,元組的遍歷和排序我們將在以后的課程中會(huì)講到。
1、創(chuàng)建元組方法很簡(jiǎn)單,元組是用小括號(hào)( )包括起來(lái)的,( )括號(hào)中的元素用逗號(hào)分割,這樣就完成元組的創(chuàng)建了。
>>>(1,2,3)
(1,2,3)
如果新建時(shí)沒(méi)有用( )括號(hào)包括,只用逗號(hào)進(jìn)行分隔python也會(huì)把它認(rèn)做為元組
>>>1,2,3
(1,2,3)
如果你新建的元組中只有一個(gè)值,那么請(qǐng)記得在這個(gè)值后邊加上逗號(hào)
>>>1,
(1,)
如果沒(méi)有逗號(hào),python只當(dāng)把它當(dāng)做整型來(lái)處理。
>>>1
1
2、還有一種有趣的元組創(chuàng)建方法,需要用到tuple函數(shù)的功能:它可以一個(gè)列表為參數(shù),把它轉(zhuǎn)換為元組。
前文中說(shuō)過(guò)元組是一個(gè)有序的集合,和列表一樣可以通過(guò)偏移來(lái)數(shù)據(jù)。簡(jiǎn)單的說(shuō),元組支持索引和切片操作。
索引(下標(biāo))和切片取值:
元組是不可變的,類似字符串,不能在原處修改內(nèi)容,但我們可以把它的類型做下轉(zhuǎn)換,例如把一個(gè)元組轉(zhuǎn)換為一個(gè)列表進(jìn)行修改,之后再轉(zhuǎn)換成元組。
例如:元組a = (2,3,3) 要把它變成(3,3,3)要怎么操作呢?
如果元組內(nèi)包含的元素中,有可變數(shù)據(jù)類型,修改起來(lái)就十分方便了。如圖所示:
1、元組是一個(gè)有序的集合,
2、元組和列表一樣可以使用索引、切片來(lái)取值。
3、創(chuàng)建元組后不能在原地進(jìn)行修改替換等操作。
4、元組支持嵌套,可以包含列表、字典和不同元組。
5、元組支持一般序列的操作,例如:+、*
>>>(1,2)+(3,4)
(1,2,3,4)
>>>(7,8)*4
(7,8,7,8,7,8,7,8)
注意+、*操作時(shí),返回的是一個(gè)新元組
元組的不可變性,在保證一個(gè)程序安全方面起到很大作用。在Python更深入的學(xué)習(xí)中你還會(huì)學(xué)到元組tuple更多特性和操作方法,對(duì)于入門級(jí)的初學(xué)才來(lái)說(shuō)先了解這些元組的基礎(chǔ)就可以了。
玩蛇網(wǎng)原創(chuàng),轉(zhuǎn)載請(qǐng)注明文章出處和來(lái)源網(wǎng)址:http://www.iplaypython.com/jichu/tuple.html
聯(lián)系客服