官术网_书友最值得收藏!

1.5.2 元組

元組(tuple)中的元素不可變且有序。不可變(Immutable)是指元組一旦被創(chuàng)建,就無法更改。元組中的每個(gè)元素都有索引,從零開始遞增。Python中的計(jì)數(shù)總是從零開始。

當(dāng)我們?cè)诖a內(nèi)部傳遞有序的數(shù)據(jù)集,且不希望該集合發(fā)生任何更改時(shí),元組是很好的選擇。例如,在以下代碼中:

你可以放心,some_function不會(huì)以任何方式更改names元組。相比之下,如果你使用如下集合:

沒有什么能阻止some_function給傳遞的names添加元素或從傳遞的names刪除元素,因此你需要檢查函數(shù)的代碼,以確定代碼是否對(duì)元素進(jìn)行修改。

注意:我們稍后將看到,無論何種情況,函數(shù)都不應(yīng)該修改它們的形參[1]。我們?cè)诒緯芯帉懙暮瘮?shù)永遠(yuǎn)不會(huì)修改它們的輸入形參。然而,你可能會(huì)使用其他不遵循這個(gè)規(guī)則的開發(fā)者所編寫的函數(shù),因此你需要檢查這些函數(shù)是否有這類副作用。

元組使用括號(hào)來定義,內(nèi)部元素以逗號(hào)分隔。如下是使用字面量語法定義的、包含我的名稱和年齡的元組:

如果想創(chuàng)建只有一個(gè)元素的元組,我們需要在元素后面添加逗號(hào):

創(chuàng)建元組也可以使用tuple函數(shù),參數(shù)是列表格式的元素集:

使用全局函數(shù)len可以獲取元組中元素的數(shù)量:

還可以使用count方法計(jì)算某元素在元組中出現(xiàn)的次數(shù):

使用index方法可以得到某元素第一次出現(xiàn)時(shí)的索引:

在上例中,我們尋找字符串“Alvaro”的索引,“Alvaro”出現(xiàn)了兩次:在索引1和5處。index方法會(huì)輸出第一個(gè)出現(xiàn)的索引,在本例中即為1。

in運(yùn)算符可用于檢查元組中是否存在某元素:

元組可以與數(shù)字相乘,這個(gè)特殊的操作會(huì)生成一個(gè)新元組,其元素是原元組元素的重復(fù),重復(fù)次數(shù)與乘數(shù)相同:

使用for循環(huán)可以遍歷元組的元素:

使用Python內(nèi)置的enumerate函數(shù),我們可以遍歷元組中的元素及其索引:

主站蜘蛛池模板: 孝义市| 高清| 景德镇市| 景德镇市| 德格县| 斗六市| 榆林市| 利津县| 新郑市| 达州市| 壶关县| 沁水县| 墨脱县| 高尔夫| 巴中市| 奉化市| 南阳市| 竹溪县| 浦东新区| 克山县| 辽宁省| 卓尼县| 奉节县| 莱州市| 农安县| 井陉县| 洱源县| 保康县| 峨山| 普格县| 惠水县| 卢湾区| 资源县| 宜兰市| 汝南县| 裕民县| 濉溪县| 河源市| 黄龙县| 巢湖市| 桂林市|