Python: 元組的基本用法


元組和列表是近親,列表允許並且提供了方法來改變它的值,但元組是不可改變的,即不允許你改變它的值----這也是它沒有方法的部分原因。

元組的主要作用是作為參數傳遞給函數調用、或是從函數調用那里獲得參數時,保護其內容不被外部接口修改。

元組在前台的用武之地不大,但是在后台卻是使用得相當頻繁的。

一個例子說明元組:

 

>>> a = ("one", "two")
>>> a[0]
'one'
>>> b = ("just-one")
>>> b[0]
'j'
>>> c = ("just-one", )
>>> c[0]
'just-one'
>>> d = "just-one",
>>> d[0]
'just-one'

 

元組是由逗號決定的,而不是小括號。所以b在這里只是一個字符串而已,這就是為什么b[0]返回的是字符串中的第一個字母。而小括號的最后一個逗號則決定了那是一個元組,所以c[0]返回的正是我們希望的結果。我們甚至可以整個去掉小括號,就像上面例子中的d一樣----雖然通常這樣做不太好。Python的宗旨之一就是盡量顯式地表達意思而不要依賴於默認行為。

 

內置序列函數和工廠函數

str:(可打印)字符串表示

list:列表表示

tuple:元組表示

len:對象的勢

max:序列中“最大的”對象

range:給定范圍內可迭代的數字

sorted:返回排好序的列表

sum:列表值加和(數字)

any:是不是有元素為True?

zip:返回Ngen元組的迭代器,其中每個元組包含了N個序列里對應的元素

 

@雖然以上很多函數的描述都標為序列,但是實際上這些函數都可以用在所有“可迭代”對象上。這里說的可迭代對象是指任何類似序列的數據結構,只要它可迭代就行,比如序列、迭代器、生成器、字典的鍵值和文件里的行等。

@zip函數接受多個序列,然后將每個序列對應位置的元素組織在一起組成一個新的元組,最后返回由這些元組組成的列表。它地長度由參數序列中最短的長度決定。舉個簡單的例子:

 

>>> zip([1, 2, 3], ("a", "b", "c"))
[(1, 'a'), (2, 'b'), (3, 'c')]


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM