10個示例帶你掌握python中的元組
資料結構是任何程式語言的關鍵部分。為了建立強大而效能良好的產品,必須非常瞭解資料結構。
在本文中,我們將研究Python程式語言的重要資料結構,元組。
元組是用逗號分隔並括在括號中值的集合。與列表不同,元組的元素是不可變的。不變性可以視為元組的識別特徵。
我將通過示例解釋元組的功能和對其的操作。
一、建立元組
元組由括號中的值組成,並用逗號分隔開
a=(3,4) print(a) print(type(a)) # (3,4) # <class 'tuple'>
元組可以儲存不同資料型別的值和重複值。
a = (3,3,'x',[1,2]) print(a) # (3,2]) print(type(a)) # <class 'tuple'>
我們也可以不使用括號建立元組。用逗號分隔的一系列值將建立一個元組。
a = 3,4,5,6 print(type(a)) # <class 'tuple'>
二、建立沒有元素或只有1個元素的元組
建立沒有元素的空元組
a = () print(type(a)) # <class 'tuple'>
建立具有1個元素的元組,需要在元素後面加上逗號,否則當做元素的普通變數型別處理
a = (3) print(type(a)) # <class 'int'> b = ([1,2]) print(type(b)) # <class 'list'>
正確的建立方法
a = (3,) print(type(a)) # <class 'tuple'> b = ([1,2],) print(type(b)) # <class 'tuple'>
三、元組是可迭代的
像列表一樣,你可以遍歷一個元組
a = (1,2,3) fori ina: print(i**2) ''' 1 4 9 '''
四、元組元素的訪問
利用下標索引訪問
a = (3,5) print(a[0]) print(a[-1]) # 3 # 5
利用切片訪問
a = (1,6,7) print(a[-2:]) # (6,7) print(a[:3]) # (1,5)
五、元組當前存放的元素是不可變的,但是可以具有可變元素
不變性可能是元組最具有識別性的特徵。我們不能修改元組中的元素。
a = (3,5) a[0] = 7 # error
但是,元組可以包含可變元素,例如列表。
a = ([1,['x','y']) a[0][0] = 99 a[1][0] = 't' print(a) # ([99,['t','y'])
六、元組的排序
元組當前存放的元素是不可變的,我們無法用sort進行排序
但是sorted可以將元組作為引數,並返回一個已經排序好的列表,注意,返回的是一個排序好的列表而不是一個排序好的元組。
a = (3,8,2) b = sorted(a) print(b) # [2,8] print(type(b)) # <class 'list'>
七、元組的常用函式
可以使用len()獲取元組的長度
a = (3,2) print(len(a)) # 3
max(),min()返回元組中元素的最大,最小值
a = (3,2) print(max(a)) print(min(a)) # 3 # 0
tuple()用於將列表轉換為元組
a = [1,4] print(tuple(a)) # (1,4)
八、count()和index()
count()可以用來統計元組中某個值出現的次數
a = (1,1,'x') print(a.count('x')) # 2 print(a.count(1)) # 3
index()可以用來返回元組中元素的下標索引
a = (1,'x') print(a.index('x')) # 1 print(a.index(1)) # 0
tips:如果一個值在元組中多次出現,index()會返回最先出現的索引
九、利用"+"拼接元組
我們可以利用“+”拼接元組得到一個新元組
a = (1,2) b = ('x','y') c = a + b print(c) # (1,'y')
十、用元組讓函式返回多個值
一般的,一個函式只能有一個返回值。我們可以用元組讓函式返回多個值。以下函式接受一個數組,並返回該陣列的總和與陣列長度。
defcount_sum(arr): count = len(arr) sum = arr.sum() returncount,sum
該函式返回的是具有2個專案的元組:
importnumpy asnp arr = np.random.randint(10,size=8) defcount_sum(arr): count = len(arr) sum = arr.sum() returncount,sum a = count_sum(arr) print(a) # (8,39) print(type(a)) # <class 'tuple'>
總結
元素和列表相似,都是值的集合,最大的區別就是不變性了。如有錯誤,疏漏,歡迎在留言區指正,希望能幫到python的初學者。
原文來自 python 客棧,歡迎關注
以上就是10個示例帶你掌握python中的元組的詳細內容,更多關於python 元組的資料請關注我們其它相關文章!