&【07】Python 數據類型之元組


本文參考:

純潔的微笑:http://www.ityouknow.com/python.html

Python 中的數據結構是通過某種方式組織在一起的數據元素的集合,這些數據元素可以是數字、字符、甚至可以是其他數據結構 在 Python 中,最基本的數據結構是序列(列表和元組),序列中的每個元素都有一個序號(元素的具體位置),這個序號叫索引,索引下標從 0 開始,以此類推……

  • Python 的元組與列表類似,不同之處在於元組的元素不能修改。
  • 元組使用小括號(),列表使用方括號[]。

1. 元組基本操作

1.1 創建元組

元組創建很簡單,只需要在括號中添加元素(不需要括號也可以),並使用逗號隔開即可。

tup1 = ('baidu', 'google', 12, 34)
tup2 = (1, 2, 3, 4, 5)
tup3 = "a", "b", "c", "d"

# 創建空元組
tup4 = ()

# 查看tup3和tup4的類型
print(type(tup3))  # 輸出 <class 'tuple'>
print(type(tup4))  # 輸出 <class 'tuple'>

==注意:== 元組中只包含一個元素時,需要在元素后面添加逗號,否則括號會被當作運算符使用,如下:

TupNum = (34)
# 不加逗號是整型
print(type(TupNum))  # 輸出 <class 'int'>

TupNum = (34,)
# 加上逗號變元組
print(type(TupNum))  # 輸出 <class 'tuple'>

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

1.2 訪問元組

元組的訪問和序列訪問元素一樣,都是通過下標索引進行訪問操作

tup1 = ('baidu', 'google', 1, 2)
tup2 = (1, 2, 3, 4, 5, 6, 7)
print(tup1[0:2])  # 輸出('baidu', 'google')

print(tup2[1:4])  # 輸出 (2, 3, 4)

1.3 修改元組

元組中的值一旦定義不能修改,但是我們可以通過元組與元組之間的連接關系來對元組進行修改,例如:

tup1 = ('baidu', 'google', 1, 2)
tup2 = (1, 2, 3, 4, 5, 6, 7)
print(tup1 + tup2)  # 輸出 ('baidu', 'google', 1, 2, 1, 2, 3, 4, 5, 6, 7)

==注意:== 以下修改元組屬於非法操作,因為元組不支持通過索引列來修改,只能對元組進行復制和連接操作

==tup1[0] = 100== (不能進行此操作)

1.4 刪除元組

由於元組的不可修改性,所以元組中的元素值是不允許刪除的,但我們可以使用 del 語句來刪除整個元組,如下實例:

tup = ('baidu', 'google', 1, 2)
print(tup)  # 輸出 ('baidu', 'google', 1, 2)
del tup
print("刪除后的元組 tup : ")
print(tup)

# 報錯信息如下,證明整個元組已經被刪除
Traceback (most recent call last):
  File "main1.py", line 7, in <module>
    print(tup)
NameError: name 'tup' is not defined

2 元組運算符

與字符串一樣,元組之間可以使用 + 號和 * 號進行運算。這就意味着他們可以組合和復制,運算后會生成一個新的元組。總而言之對整個元組進行一些運算后就會生成一個新的元組。

2.1 元組求長度

元組求長度使用運算函數 len ,如下

tup1 = ('baidu', 'google', 1, 2)
# 求元組tup1的長度
print(len(tup1))  # 輸出 3

2.2 連接元組

兩個甚至對個元組的連接使用 + 連接符,例如:

tup1 = (1, 2, 3)
tup2 = (4, 5, 6)
tup3 = (7, 8, 9)
print(tup1 + tup2 + tup3)  # 輸出 (1, 2, 3, 4, 5, 6, 7, 8, 9)

2.3 復制元組

tup1 = ('abc')
# 元組復制需要加上分隔符后面復制的內容就按照分隔符分隔開
print((tup1,) * 3)  # 輸出 ('abc', 'abc', 'abc')

2.4 判斷元素

判斷元組中元素是否存在使用關鍵字 in 進行判斷,判斷結果返回布爾值

tup1 = 'abc'
print('a' in tup1)  # 輸出True
print('d' in tup1)  # 輸出False

2.5 元組中指定位置元素訪問

和序列一樣,元組中的元素同樣可以使用索引號訪問指定位置的元素,例如:

content = ('hello', 'world', '!')
print(content)  # 輸出 ('hello', 'world', '!')
print(content[1:])  # 輸出('world', '!')
print(content[:2])  # 輸出('hello', 'world')
print(content[-1])  # 輸出!
print(content[-2])  # 輸出world

3 元組內置函數

和列表一樣,元組同樣也擁有一些內置函數,這些函數用於判元組中的元素大小以及將元組做相應的轉換

tp = (1, 2, 3, 4, 5, 6, 7, 8)
# 計算元組元素個數。
print(len(tp))  # 輸出 8

# 返回元組中元素最大值。
print(max(tp))  # 輸出 8

# 返回元組中元素最小值。
print(min(tp))  # 輸出 1

# 將列表轉換為元組。
seq = [5, 4, 3, 2, 1]
print(seq)  # 輸出 [5, 4, 3, 2, 1]
print(type(seq))  # 輸出<class 'list'>

tpseq = tuple(seq)
print(tpseq)  # 輸出 (5, 4, 3, 2, 1)
print(type(tpseq))  # 輸出 <class 'tuple'>


免責聲明!

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



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