序列之通用操作
pytho中,最基本的資料結構就是序列。
什麼是序列:
>>> numbers = [1,2,3,4,5,6,7,8,9,0]
>>> greeting = u'hello, world!'
>>> names = ('alice','tom','ben','john')
python內建序列種類
共有6種:
列表,元組,字串,unicode字串,buffer物件,xrange物件。
序列通用操作
python中所有的序列都支援下面的8種操作。
索引序列中所有元素都是有編號的----從0開始
可以通過索引獲取元素:
>>> greeting[0]
'h'>>> names[3]
'john'
可以通過索引重新賦值:
>>> numbers[2] = 15
>>> numbers
[1, 2, 15, 4, 5, 6, 7, 8, 9, 0]
分片分片操作對於提取序列的一部分很有用。
分片通過冒號相隔的2個索引值來實現:
>>> numbers[3:5]
[4, 5]
分片常用操作:
取序列最後幾個元素:
>>> numbers[7:]
[8, 9, 0]
取序列開始的幾個元素
>>> numbers[:3]
[1, 2, 15]
取序列所有元素
>>> numbers[:]
[1, 2, 15, 4, 5, 6, 7, 8, 9, 0]
步長指定
通過第三個引數來設定步長。
預設情況下步長為1,可以為負數。
>>> numbers[0:8]
[1, 2, 15, 4, 5, 6, 7, 8]
>>> numbers[0:8:2]
[1, 15, 5, 7]
>>> numbers[0:8:3]
[1, 4, 7]
#負數步長
>>> numbers[8:2:-2]
[9, 7, 5]
加使用加號 + 可以把2個相同型別的序列相加
>>> [1,2,3] + [4,5,6]
[1, 2, 3, 4, 5, 6]
>>> str1 = 'test string 1'
>>> str2 = 'test result is ok'
>>> print str1 + ' ' + str2
test string 1 test result is ok
>>> str3 = str1 + ' ' + str2
>>> str3
'test string 1 test result is ok'
>>> str1 = str1 + ' is failed'
>>> str1
'test string 1 is failed'
乘如果乙個序列乘以數字n,會生成乙個新序列。
並且,新序列中會把原來的序列重複n次。
>>> 'python'*3
'pythonpythonpython'
經常用於列表初始化:
>>> sequence = [none]*5
>>> sequence
[none, none, none, none, none]
in 運算子
判斷乙個值是否在序列中。條件為真返回true, 條件為假返回false.
>>> numbers
[1, 2, 15, 4, 5, 6, 7, 8, 9, 0]
>>> 15 in numbers
true
>>> 20 in numbers
false
>>> temp = [8]
>>> temp in numbers
false
>>> temp2 = [4,5,6,[8],[9]]
>>> temp2
[4, 5, 6, [8], [9]]
>>> temp in temp2
true
序列長度, 最大元素, 最小元素
這3種運算主要使用3個內建函式: len, max, min。
>>> numbers
[1, 2, 15, 4, 5, 6, 7, 8, 9, 0]
>>> len(numbers)
>>> max(numbers)
>>> min(numbers)
python通用序列操作 序列的幾個通用操作介紹
sequence 是 python 的一種內建型別 built in type 內建型別就是構建在 python interpreter 裡面的型別,幾個基本的 sequence type 比如 list 表 tuple 定值表,或翻譯為元組 range 範圍 可以看作是 python interp...
Python基礎 通用序列操作
python 繼續 python包含6種內建的序列,各自是 列表 元組 字串 unicode字串 buffer物件和xrange物件。我們將逐步進行介紹。今天主要介紹一下通用序列操作。放之四海而皆準。1 索引 全部程式猿都知道,索引下標從零開始。python也是這樣,索引0指向序列中第乙個元素。可是...
Python 序列通用操作介紹
python包含6種內建的序列 列表 元組 字串 unicode字串 buffer物件 xrange物件。在序列中的每個元素都有自己的編號。列表與元組的區別在於,列表是可以修改,而組元不可修改。理論上幾乎所有情況下元組都可以用列表來代替。有個例外是但元組作為字典的鍵時,在這種情況下,因為鍵不可修改,...