Python元組詳解

語言: CN / TW / HK

目前B站正在直播Mysql、Oracle實戰,詳情關注公眾號:IT邦德

微信二維碼                              微信公眾號

列表屬於可變序列,可以任意修改列表中的元素。元組屬於不可變序列,不能修改元組中的元素。

因此,元組沒有增加元素、修改元素、刪除元素相關的方法。因此,我們只需要學習元組的建立和刪除,元組中元素的訪問和計數即可。

元組支援如下操作:

1. 索引訪問

2. 切片操作

3. 連線操作

4. 成員關係操作

5. 比較運算操作

6. 計數:元組長度 len()、最大值 max()、最小值 min()、求和 sum()等。

1 元組的建立

1.1. 通過()建立元組,小括號可以省略。

a = (10,20,30)或者a = 10,20,30

如果元組只有一個元素,則必須後面加逗號。

這是因為直譯器會把(1)解釋為整數 1,(1,)解釋為元組。

>>> a = (1)
>>> type(a)
<class 'int'>
>>> a = (1,)
#或者
a = 1,
>>> type(a)
<class 'tuple'>

2.2. 通過 tuple()建立元組

tuple(可迭代的物件)
例如:
b = tuple()
#建立一個空元組物件
b = tuple("abc")
b = tuple(range(3))
b = tuple([2,3,4])

總結:

tuple()可以接收列表、字串、其他序列型別、迭代器等生成元組。

list()可以接收元組、字串、其他序列型別、迭代器等生成列表。

2 元組的元素訪問和計數

 

11.2 元組的元素訪問和計數

2.1 元組的元素不能修改

>>> a = (20,10,30,9,8)
>>> a[3]=33
Traceback (most recent call last):
File "<pyshell#313>", line 1, in <module>
a[3]=33
TypeError: 'tuple' object does not support item assignment

2.2 元組的元素訪問和列表一樣,只不過返回的仍然是元組物件

>>> a = (20,10,30,9,8)
>>> a[1]
10
>>> a[1:3]
(10, 30)
>>> a[:4]
(20, 10, 30, 9)

3. 列表關於排序的方法 list.sorted()是修改原列表物件,元組沒有該方法。如果要對元組排

序,只能使用內建函式 sorted(tupleObj),並生成新的列表物件。

>>> a = (20,10,30,9,8)
>>> sorted(a)
[8, 9, 10, 20, 30]

3 zip

zip(列表 1,列表 2,...)將多個列表對應位置的元素組合成為元組,並返回這個 zip 物件

>>> b = [40,50,60]
>>> c = [70,80,90]
>>> d = zip(a,b,c)
>>> list(d)
[(10, 40, 70), (20, 50, 80), (30, 60, 90)]

QQ:2243967774,更多資料請關注公眾號:IT 邦德,專注於資料庫及程式開發,掃描加微信

​​​​​​​