python 元組操作(tuple)
阿新 • • 發佈:2017-11-10
分割 開始 轉換 move note 第一個 tuple list 有一個
‘‘‘
定義 tuple 與定義 list 的方式相同,但整個元素集是用小括號包圍的,而不是方括號。
Tuple 的元素與 list 一樣按定義的次序進行排序。
Tuples 的索引與 list 一樣從 0 開始,所以一個非空 tuple 的第一個元素總是 t[0]。
負數索引與 list 一樣從 tuple 的尾部開始計數。
與 list 一樣分片 (slice) 也可以使用。註意當分割一個 list 時,會得到一個新的 list ;
當分割一個 tuple 時,會得到一個新的 tuple。
‘‘‘
(1) 您不能向 tuple 增加元素。Tuple 沒有 append 或 extend 方法。
(2) 您不能從 tuple 刪除元素。Tuple 沒有 remove 或 pop 方法。
(3) 您不能在 tuple 中查找元素。Tuple 沒有 index 方法。
(4) 然而,您可以使用 in 來查看一個元素是否存在於 tuple 中。
Tuple 比 list 操作速度快。如果您定義了一個值的常量集,並且唯一要
用它做的是不斷地遍歷它,請使用 tuple 代替 list。
? 如果對不需要修改的數據進行 “寫保護”,可以使代碼更安全。使用
tuple 而不是 list 如同擁有一個隱含的 assert 語句,說明這一數據是常
量。如果必須要改變這些值,則需要執行 tuple 到 list 的轉換 (需要使
用一個特殊的函數)。
? Tuples 可以在 dictionary 中被用做 key,但
是 list 不行。實際上,事情要比這更復雜。Dictionary key 必須是不可變
的。Tuple 本身是不可改變的,但是如果您有一個 list 的 tuple,那就認
為是可變的了,用做 dictionary key 就是不安全的。只有字符串、整數
或其它對 dictionary 安全的 tuple 才可以用作 dictionary key。
? Tuples 可以用在字符串格式化中,我們會很快看到。
Note: Tuple 到 list 再到 tuple
Tuple 可以轉換成 list,反之亦然。內置的 tuple 函數接收一個 list,並返回一
個有著相同元素的 tuple。而 list 函數接收一個 tuple 返回一個 list。從效果上
看,tuple 凍結一個 list,而 list 解凍一個 tuple。
python 元組操作(tuple)