1. 程式人生 > >Python 【元祖】【元祖相關功能】

Python 【元祖】【元祖相關功能】

元祖

tu = (111,'alex',(11,['aa','xhg',(78,43)],'aaa'),789,)

通過這個例子,我們看到元祖的特徵:

  • 是通過括號()括起來的
  • 一般寫元祖的時候,推薦子最後加入逗號 ,
  • 元祖是有序的
  • 元祖的一級元素不可被修改、不能被增加或者刪除(後面通過程式來理解)

元祖的功能

1.索引取值

索引取元祖的一級元素

tu = (111,'alex',(11,['aa','xhg',(78,43)],'aaa'),789,)
#取元祖 tu 中的第三個元素
v = tu[2]
print(v)

#程式執行結果
(11, ['aa', 'xhg', (78, 43)], '
aaa')

索引取元祖的二、三級元素

tu = (111,'alex',(11,['aa','xhg',(78,43)],'aaa'),789,)
#取元祖 tu 中的 78
v = tu[2][1][2][0]
print(v)

#程式執行結果
78

2.切片取值

tu = (111,'alex',(11,['aa','xhg',(78,43)],'aaa'),789,)
v = tu[0:2]
print(v)

3.for迴圈

可以執行for迴圈的物件是可迭代的物件

tu = (111,'alex',(11,['aa','xhg',(78,43)],'aaa'),789,)
for item in tu: print(item) #執行結果: 111 alex (11, ['aa', 'xhg', (78, 43)], 'aaa') 789

4.字串、列表以及元祖三者之間的轉換

(字串和列表之間的轉換在上一篇有總結哦)

字串==>元祖

s = 'dsjkfsadfjksdfh'
v = tuple(s)
print(v)

列表==>元祖

li = [111,'alex',789,[11,123,'xhg'],True]
v = tuple(li)
print(v)

列表<==元祖

tu = (111,'alex',(11,['aa'
,'xhg',(78,43)],'aaa'),789,) li = list(tu) print(li)

字串<==元祖

如果元祖裡元素型別既有數字,又有字串(需要自己寫for迴圈來一個一個處理)

tu = (111,'alex',(11,['aa','xhg',(78,43)],'aaa'),789,)
s = ''
for item in tu:
s = s + str(item)
print(s)

如果元祖裡元素型別只有字串,使用join即可

tu = ('adf','qwe','xhg')
s = ''.join(tu)
print(s)

5.修改

元祖一級元素不可以刪除、修改、增加所以,這裡的修改針對的是元祖二級以上的元素

#將元祖 tu 中的‘a’修改為666
tu = (111,'alex',(11,['aa','xhg',(78,43)],'aaa'),789,)
tu[2][1][0] = 666
print(tu)

6.count

  • Return number of occurrences of value
tu = (111,'alex',(11,['aa','xhg'],'alex'),789,'alex')
v = tu.count('alex')
print(v)

7.index

  • Return first index of value.
  • Raises ValueError if the value is not present.
tu = (111,'alex',(11,['aa','xhg'],'alex'),789,'alex')
v = tu.index('alex')
print(v)