Python的 元組(Tuple)詳解

Python3的 元組(Tuple)

Python 的元組與列表類似,不同之處在於元組的元素不能修改。

元組使用小括號 ( ),列表使用方括號 [ ]。

元組創建很簡單,隻需要在括號中添加元素,並使用逗號隔開即可。

元組中隻包含一個元素時,需要在元素後面添加逗號 , ,否則括號會被當作運算符使用:

元組與字符串類似,下標索引從 0 開始,可以進行截取,組合等。

可以對元組進行連接組合,但是不能修改,刪除。

可以刪除整個元組。del tup 刪除之後就是未定義瞭。

元組運算符

與字符串一樣,元組之間可以使用 + 號和 * 號進行運算。這就意味著他們可以組合和復制,運算後會生成一個新的元組。

元組索引,截取

因為元組也是一個序列,所以我們可以訪問元組中的指定位置的元素,也可以截取索引中的一段元素。

img

元組內置函數

Python元組包含瞭以下內置函數

len() max() min()

uple(iterable)

將可迭代系列轉換為元組。

Python中,元組裝包拆包是自動的,不需要任何函數,導致很多人對於函數返回值一會有括號一會沒括號非常迷惑

先看代碼:

a=1,2,3
#它其實等價於下面的代碼
a=(1,2,3)
#因為等號左邊隻有1個變量,而等號右邊有3個值,因此自動裝包成為一個元組
a,b,c=(1,2,3)
#自動拆包,得到a=1,b=2,c=3

當函數return的時候,其實隻能return一個值,並不能return多個值

有人會問,我return瞭多個值也沒有報錯啊,運行很正常

那正是因為Python將多個返回值自動裝包造成的

因此當你返回多個變量,而外面隻用一個變量去接收,會接收到一個元組

而當你用多個變量去接,就能對應的接收到每個值,這是因為自動拆包

理解瞭這一點,對於理解函數返回值、字典中的鍵值對等等都是有幫助的

執行會報錯:too many values to unpack

這裡很明顯的,告訴你元組裡有3個值需要拆包,而你隻用2個值去接收,證明瞭元組確實執行瞭一個拆包的動作

總結

本篇文章就到這裡瞭,希望能夠給你帶來幫助,也希望您能夠多多關註WalkonNet的更多內容!

推薦閱讀: