元組的應用與實例
1.元組的特性
- 一經定義,元組的內容不能改變(不能修改/刪除/添加),
tuple
所謂的“不變”是說,tuple
的每個元素,指向永遠不變 - 元素元素可以存儲不同類型的數據
- 元組元素有圓括號括起來
t=(1,2,3)
現在,這個tuple
不能變了,它也沒有append(),insert()這樣的方法。其他獲取元素的方法和list是一樣的,但不能賦值成另外的元素
- 因爲
tuple
不可變,所以代碼更安全。如果可能,能用tuple
代替list
就儘量用tuple
- 當你定義一個
tuple
時,在定義的時候,tuple
的元素就必須被確定下來
2. 定義一個空的tuple,可以寫成()
t=()
print(t)
運行結果
()
3. 定義一個只有1個元素的tuple
t=(1)
print(t)
運行結果
1
如果你這麼定義,定義的不是tuple
,是1
這個數!這是因爲括號()
既可以表示tuple
,又可以表示數學公式中的小括號,這就產生了歧義,因此,Python規定,這種情況下,按小括號進行計算,計算結果自然是1
所以,只有1
個元素的tuple定義時必須加一個逗號,,來消除歧義
t=(1,)
print(t)
運行結果
(1,)
4.訪問,遍歷元組
這兩個操作和list
的操作是一樣的,相應的操作可以從這裏找list 操作
5. 排序
- 因爲
tuple
的內容不能改變,所以tuple
沒有sort()
函數 - 可以將
tuple
轉換成list
,然後再對list
排序,最後將排序後的list
賦值給tuple
tuple轉換成list
列表對象=list(元組對象)
list轉換成tuple
元組對象=tuple(列表對象)
t=('apple','banana','pear','grape')
l=list(t)
l.sort()
t=tuple(l)
print(t)
運行結果
('apple', 'banana', 'grape', 'pear')
可以使用reverse()
函數進行反序
t=('apple','banana','pear','grape')
l=list(t)
l.reverse()
t=tuple(l)
print(t)
運行結果
('grape', 'pear', 'banana', 'apple')