Day 01——Task01:變量、運算符與數據類型
Day 02——Task02:條件與循環
Day 03——Task03:列表與元組(上)
Day 04——Task03:列表與元組(下)
Day 05——Task04:字符串與序列
Day 06——Task05:函數與Lambda表達式(上)
Day 07——Task05:函數與Lambda表達式(下)
Day 08——Task06:字典與集合
Day 09——Task07:文件與文件系統(上)
Day 10——Task07:文件與文件系統(下)
Day 11——Task08:異常處理
Day 12——Task09:else 與 with 語句
Day 13——Task10:類與對象(上)
Day 14——Task10:類與對象(下)
Day 15——Task11:魔法方法(上)
Day 16——Task11:魔法方法(下)
Day 17——Task12:模塊
文章目錄
在上一篇中,我們詳細瞭解了列表的各個方法與函數,今天我們來介紹一下“戴上了枷鎖的列表”——元組
2. 元組Tuple
- Python 的元組與列表類似,不同之處在於元組的元素不能修改。
- 元組使用小括號,列表使用方括號。
- 元組創建很簡單,只需要在小括號中添加元素,並使用逗號隔開即可。
- 同列表一樣,空元組的創建只需要一對小括號既可。
tuple1 = ('Mive','-Vax', 5, 3)
tuple2 = (1, 2, 3, 4, 5 )
tuple3 = ('Mive','-Vax', [3, 5])
empty = ()
注意:當元組中只包含一個元素時,需要在元素後面添加逗號。元組的創建其實不需要小括號而是在元素後面添加一個逗號。
tuple1 = (5)
print(type(tuple1))
tuple1 = (5,)
print(type(tuple1))
tuple1 = 5, 3, 8
print(type(tuple1))
# <class 'int'>
# <class 'tuple'>
# <class 'tuple'>
與字符串的索引一樣,元組索引從0開始。元組可以進行截取、組合等。
2.1 訪問元組中的值
使用下標索引來訪問元組中的值,同樣你也可以使用方括號的形式截取字符,如下所示:
tuple1 = ('Mive','-Vax', 5, 3)
sample = (1, 2, 3, 4, 5, 6, 7, 8, 9 )
print ("tuple1[0]: ", tuple1[0])
print ("sample[3:5]: ", sample[3:5])
print ("sample[-5:-3]: ", sample[-5:-3])
# tuple1[0]: Mive
# sample[3:5]: (4, 5)
# sample[-5:-3]: (5, 6)
2.2 元組的更新和刪除
元組的元素是無法修改的,所以若要修改元組的元素,需要使用到元組分片與拼接。
2.2.1 向元組添加元素
tuple1 = ('Mive','-Vax', 5, 3)
sample = (1, 2, 3)
tuple1 = tuple1[:1] + sample + tuple1[1:]
print (tuple1)
# ('Mive', 1, 2, 3, '-Vax', 5, 3)
2.2.2 向元組修改元素
需要定位到要修改元素的索引值,以及要被修改之後的值。
tuple1 = ('Mive','-Vax', 5, 3)
tuple1 = tuple1[:2] + (8,) + tuple1[3:]
print (tuple1)
# ('Mive', '-Vax', 8, 3)
2.2.3 向元組刪除元素
需要定位到被刪除元素的索引值。
tuple1 = ('Mive','-Vax', 5, 3)
tuple1 = tuple1[:2] + tuple1[3:]
print (tuple1)
# ('Mive', '-Vax', 3)
2.3 del 語句刪除元組
我們可以使用del語句來刪除整個元組。
tuple1 = ('Mive','-Vax', 5, 3)
del tuple1
print (tuple1)
# NameError: name 'tuple1' is not defined
2.4 元組的常用操作符
2.4.1比較操作符
即>
、>=
、<
、<=
、==
、!=
。
tuple0 = (5, 3)
tuple1 = (5, 31)
tuple2 = (51, 3)
print(tuple0 > tuple2) # False
print(tuple0 > tuple1) # False
print(tuple1 > tuple2) # False
2.4.2邏輯操作符
即and
、or
、not
。
tuple0 = (5, 3)
tuple1 = (5, 31)
tuple2 = (51, 3)
print(tuple0 > tuple2 and tuple0 > tuple1) # False
print(tuple0 > tuple2 or tuple0 > tuple1) # False
print(not(tuple1 > tuple2)) # True
2.4.3成員關係操作符
即in
、not in
。
tuple1 = ('Mive', '-Vax', 5, 3)
print(5 in tuple1) # True
print(51 not in tuple1) # True
2.4.4 * 重複操作符
在元組中使用 ’ * ’ 重複操作符 ,可以重複複製拼接。
tuple1 = ('Mive', '-Vax', 5, 3)
print(tuple1 * 3)
# ('Mive', '-Vax', 5, 3, 'Mive', '-Vax', 5, 3, 'Mive', '-Vax', 5, 3)
2.5元組函數
2.5.1 len(tuple) 函數
len(tuple) 函數返回元組元素個數。
tuple1 = ('Mive', '-Vax', 5, 3)
print (len(tuple1)) # 4
tuple2=tuple(range(5))
print (tuple2, len(tuple2)) # (0, 1, 2, 3, 4) 5
2.5.2 max(tuple) 函數
max(tuple) 函數返回元組元素最大值。
tuple1 = ('Mive', '-Vax', '5', '3')
tuple2=tuple(range(5))
print ("tuple1 最大元素值 : ", max(tuple1))
print ("tuple2 最大元素值 : ", max(tuple2))
# tuple1 最大元素值 : Mive
# tuple2 最大元素值 : 4
2.5.3 min(tuple) 函數
min(tuple) 函數返回元組元素最小值。
tuple1 = ('Mive', '-Vax', '5', '3')
tuple2=tuple(range(5))
print ("tuple1 最小元素值 : ", min(tuple1))
print ("tuple2 最小元素值 : ", min(tuple2))
# tuple1 最小元素值 : -Vax
# tuple2 最小元素值 : 0
2.5.4 tuple(seq)函數
將列表轉換爲元組。
list1 = ['Mive', '-Vax', '5', '3']
print (list1, type(list1))
tuple1=tuple(list1)
print (tuple1, type(tuple1))
# ['Mive', '-Vax', '5', '3'] <class 'list'>
# ('Mive', '-Vax', '5', '3') <class 'tuple'>
3.總結
列表與元組在Python編程中十分常用,需要熟練掌握其中的特點與區別纔可。