- 機(jī)械工程師Python編程:入門、實(shí)戰(zhàn)與進(jìn)階
- (西)安琪兒·索拉·奧爾巴塞塔
- 658字
- 2024-09-10 16:13:04
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ù),我們可以遍歷元組中的元素及其索引:

- Java程序設(shè)計(jì)(慕課版)
- Mastering Ember.js
- jQuery EasyUI網(wǎng)站開發(fā)實(shí)戰(zhàn)
- C語言程序設(shè)計(jì)案例式教程
- C語言程序設(shè)計(jì)
- INSTANT Sinatra Starter
- MySQL入門很輕松(微課超值版)
- Python機(jī)器學(xué)習(xí)之金融風(fēng)險(xiǎn)管理
- Natural Language Processing with Python Quick Start Guide
- 算法設(shè)計(jì)與分析:基于C++編程語言的描述
- Learning Android Application Testing
- 零基礎(chǔ)學(xué)Java第2版
- 百萬在線:大型游戲服務(wù)端開發(fā)
- Getting Started with hapi.js
- Learning Alfresco Web Scripts