序列其實是python的某幾類資料型別的統稱,如字串,列表和元組,將它們統稱為序列,是因為:它們的成員有序排列,並且可以通過下標偏移量訪問到它的乙個或者幾個成員。
總結的思路為:先介紹適用於所有序列型別的操作符和內建函式,然後再分別對這幾種序列型別進行介紹。
1.序列
序列型別都有相同的訪問模式:它的每乙個元素都可以通過指定乙個偏移量的方式得到,多個元素通過切片操作的方式得到。而在python序列中,偏移量的規則如下(假設序列長度為n):
(1)標準型別操作符
在《python回顧與整理2:python物件》中有介紹標準型別操作符,這些操作符一般都是可以適用於所有的序列型別的。
(2)序列型別操作符
分別介紹如下:
對於字串,就是判斷字元是否在字串中(其實這個字元也是乙個字串物件);對於列表和元組,就是判斷物件是否屬於該物件序列,語法為:
obj [not] in 序列
語法為:sequence * copies_int
,即數字必須為整型,不能是長整型。
假設有列表:l = [0, 1, 2, 3, 4],常見的有下面的幾種形式操作:
操作
結果
l或l[:]
[1, 2, 3, 4, 5]
l[0:3]或l[:3]
[0, 1, 2]
l[2:5]或l[2:]
[2, 3, 4]
l[1:3]
[1, 2]
l[3]
[3]通過上表容易知道:如果沒有指定起始索引值(即為none),將以第乙個索引值作為預設值;同樣地,如果沒有指定結尾索引值,將以最後乙個索引值作為預設值;如果都沒有指定,則返回整個序列。
使用第3個引數作為步長,如下:
1
2
3
4
5
>>> s
=
'abcdefgh'
>>> s[::
-
1
]
#可以視作翻轉
'hgfedcba'
>>> s[::
2
]
#隔乙個取乙個
'aceg'
主要看下面乙個例子:
1
2
3
4
5
6
7
8
9
>>> s
python筆記(1)序列
最近各種東西實在太忙了,但是忙裡偷閒還是要開一本書,老外寫的,雖然囉嗦但是很有啟發性的。1.記錄函式 如果想要給函式寫文件,從而讓後來者使用能夠更加理解,可以加入注釋,以 開頭 另外一種方式就是直接寫上字串,它們會作為函式的一部分進行儲存,這成為 文件字串 例如 def square x calcu...
Python基礎 4序列總結
區別 列表 list 元組 tuple 字典 dictionary 字串 char 修改可以修改 不可修改 可以修改 可以修改 索引有索引 有索引無索引 有索引型別 相同型別 不同型別 任何型別 文字字元 場景普遍使用 特定場景 描述事物 多種方法 切片可以切片 可以切片 不可切片 可以切片 名稱基...
Python學習之路(1) 序列解包
序列解包 python中一次給多個變數賦多個值 基本方法就是一次性將乙個元組賦值給多個變數 序列解包 value 1,2,3 print type value print value x,y,z value print x,y,z print x print y print z print type...