標籤:python 字串 編輯器 技術 元素
python中包含六種內建的序列:列表;元組;字串;unicode字串;buffer對象;xrange對象。
一、元組:不可變序列
元組與列表一樣,也是一種序列。唯一不同是元組不能修改(元組和列表在技術實現上有一些不同,但是在實際使用時,可能不會注意到。且元組沒有像列表一樣的方法)。
1、建立元組:用逗號(,)分開,元組(大部分時候)是通過圓括弧括起來的
>>> 1,2,3 //直接在python編輯器輸入
(1, 2, 3)
>>>
>>> (1,2,3) //用括弧括起來定義元組
(1, 2, 3)
>>> () //空元組
()
>>>
>>> 3
3
>>> (3,) //定義一個元素的元組(注意:必須有逗號)
(3,)
>>>
>>> 3*(3)
9
>>> 3*(3,)
(3, 3, 3)
>>>
2、元組函數:
a)、tuple
tuple函數的功能與list函數基本上一樣:以一個序列作為參數並轉為元組,如果參數就是元組,則原樣返回。
如:
>>> a=(1,2,3)
>>> b=[1,2,3]
>>> tuple(a)
(1, 2, 3)
>>> tuple(b)
(1, 2, 3)
>>> b
[1, 2, 3]
>>>
>>> tuple([‘a‘,‘b‘,‘c‘])
(‘a‘, ‘b‘, ‘c‘)
>>>
3、基本元組操作:
元組除了建立與訪問外,基本沒有其他動作,參照通用序列操作(索引、分區、加、乘、迭代、成員資格等)
如:
>>> a=(1,2,3,4,5,6,1,3,4,2)
>>> a[2] //索引
3
>>> a[2:5] //分區 (元組的分區還是元組,正如列表的分區還是列表一樣)
(3, 4, 5)
>>> a[2::2] //分區和步長
(3, 5, 1, 4)
>>> b=(11,12)
>>> a+b //元組相加
(1, 2, 3, 4, 5, 6, 1, 3, 4, 2, 11, 12)
>>> 2 in a+b //成員判斷
True
>>> 4*b //乘運算
(11, 12, 11, 12, 11, 12, 11, 12)
>>>
4、元組存在的意義:
列表一般可以替代元組,但是在以下兩個方面來說,元組是不能替代的:
a)、元組可以在映射(和集合的成員)中當作鍵使用,而列表不行
b)、元組作為很多內建函數和方法的傳回值存在,也就是說必須對元組進行處理。只要不嘗試修改元組,那麼“處理”元組在絕大多數情況下就是把他們當作列表來進行操作(除非需要使用一些元組沒有的方法,如sort和pop)
python資料結構-序列之元組