@[toc]
元組的應(yīng)用與實例
1.元組的特性
- 一經(jīng)定義蛤奢,元組的內(nèi)容不能改變(不能修改/刪除/添加)让腹,
tuple
所謂的“不變”是說,tuple
的每個元素骇窍,指向永遠(yuǎn)不變 - 元素元素可以存儲不同類型的數(shù)據(jù)
- 元組元素有<font color=Red>圓括號</font>括起來
t=(1,2,3)
現(xiàn)在锥余,這個tuple
不能變了,<font color=Red>它也沒有append()嘲恍,insert()這樣的方法</font>雄驹。其他獲取元素的方法和list是一樣的,<font color=Red>但不能賦值成另外的元素</font>
- 因為
tuple
不可變医舆,所以代碼更安全。如果可能爷速,能用tuple
代替list
就盡量用tuple
- 當(dāng)你定義一個
tuple
時霞怀,在定義的時候,tuple
的元素就必須被確定下來
2. 定義一個空的tuple毙石,可以寫成()
t=()
print(t)
運行結(jié)果
()
3. 定義一個只有1個元素的tuple
t=(1)
print(t)
運行結(jié)果
1
如果你這么定義,定義的不是tuple
滞时,是1
這個數(shù)丧蘸!這是因為括號()
既可以表示tuple
遥皂,又可以表示數(shù)學(xué)公式中的小括號刽漂,這就產(chǎn)生了歧義,因此样悟,Python規(guī)定庭猩,這種情況下窟她,按小括號進行計算蔼水,計算結(jié)果自然是1
<font color=Red>所以,只有1
個元素的tuple定義時必須加一個逗號,吊说,來消除歧義</font>
t=(1,)
print(t)
運行結(jié)果
(1,)
4.訪問优炬,遍歷元組
這兩個操作和list
的操作是一樣的,相應(yīng)的操作可以從這里找list 操作
5. 排序
- 因為
tuple
的內(nèi)容不能改變雅宾,所以tuple
沒有sort()
函數(shù) - 可以將
tuple
轉(zhuǎn)換成list
葵硕,然后再對list
排序,最后將排序后的list
賦值給tuple
tuple轉(zhuǎn)換成list
列表對象=list(元組對象)
list轉(zhuǎn)換成tuple
元組對象=tuple(列表對象)
t=('apple','banana','pear','grape')
l=list(t)
l.sort()
t=tuple(l)
print(t)
運行結(jié)果
('apple', 'banana', 'grape', 'pear')
可以使用reverse()
函數(shù)進行反序
t=('apple','banana','pear','grape')
l=list(t)
l.reverse()
t=tuple(l)
print(t)
運行結(jié)果
('grape', 'pear', 'banana', 'apple')