元組是一種固定長度、不可變的python物件序列。
1.建立
建立元組最簡單的方法就是用逗號分隔序列值。
tup = 4,5,6
tup(4,5,6)
當你通過更複雜的表示式來定義元組時,通常需要用括號將值包起來.
tup_2 =(4,5,6),(7,8)
tup_2
((4, 5, 6), (7, 8))
以上是生成了元素是元組的元組。
2.轉換
你可以使用tuple函式將任意序列或迭代器轉換為元組:
tuple([4,0,2])
(4, 0, 2)
tup = tuple('string')
tup('s', 't', 'r', 'i', 'n', 'g')
元組的元素可以通過中括號[ ]來獲取,在大多數序列型別中都可以使用這個方法。
3.修改
雖然物件元組中儲存的物件其自身是可變的,但是元組一旦建立,各個位置上的物件是無法被修改的:
tup = tuple(['foo',[1,2],true])
tup[2] = false
typeerror traceback (most recent call last)
in ()
----> 1 tup[2] = false
typeerror: 'tuple' object does not support item assignment
但是如果元組中有乙個物件是可變的,例如列表,那麼你就可以在它內部進行修改:
tup('foo', [1, 2, 3], true)
也可以使用+號連線元組生成更長的元組:
(1,none,'foo')+(2,3)+(1,'bear')
(1, none, 'foo', 2, 3, 1, 'bear')
將元組乘以整數,則會和列表一樣,生成多份拷貝的元組,請注意物件自身並沒有複製,只是指向它們的引用進行了複製。
4.拆包
如果你想要將元組型的表示式賦值給變數,python會對等號右邊的值進行拆包;
即使是巢狀元組也可以拆包,使用這個功能可以輕易的變換變數名。
拆包的乙個常用場景就是遍歷元組或者列表組成的序列:
seq = [(1,2,3),(4,5,6),(7,8,9)]
for a,b,c in seq:
print('a =,b =,c ='.format(a,b,c))
a =1,b =2,c =3
a =4,b =5,c =6
a =7,b =8,c =9
另外乙個常用場景就是從函式返回多個值。
當然paython語言也有一些更為高階的元組拆包功能,用於幫助你從元組的起始位置「採集」一些元素。這個功能就是使用特殊語法*rest,用於在函式呼叫時獲取任意長度的位置引數列表:
values= 1,2,3,4,5
a,b,*rest = values
a,b(1, 2)
rest
[3, 4, 5]
rest部分有時是你想要丟棄的資料,為了方便會使用下劃線(_)來表示不想要的變數:
a,b,*_ = values
元組方法
由於元組的內容和長度是無法改變的,所以它的例項方法比較少,不過乙個常用的方法就是count(列表中也可以用),用於計量某個數值在元組**現的次數:
a = (1,2,2,2,3,4,2)
a.count(2)
4
以上就是paython中元組的部分用法。 python中的元組 Python中的元組
一 元組 tuple 元組基本上就像乙個不可改變的列表。與列表一樣支援任意型別的元素 支援巢狀以及常見的序列操作。元組也有一些方法,可用dir tuple 檢視。元組編寫在圓括號中。info 林間 man 1991,7,13,true 支援不同型別 info 林間 man 1991,7,13 tru...
python中的元組
1 元組 列表中通常儲存相同型別的資料,而元組中通常儲存不同型別的資料 tuple 元組 與列表相似,不同之處在於元組的元素不能修改 元組表示多個元素組成的序列 元組在python開發中,有特定的應用場景 用於儲存一串資訊,資料之間使用,分隔 元組用 定義 2 元組的特點 t2 hello 要是沒有...
python中的元組
元組 類似列表 當成容器 特點 1.定義時 2.元組中的內容不可修改 3.關鍵字tuple 列表 元組 用列表強制轉化為元組 t1 print type t1 class tuple t2 1 print type t2 int t3 1,print type t3 class tuple t4 a...