1.簡介
Python 中的序列是一塊可存放多個(gè)值的連續(xù)內(nèi)存空間,所有值按一定順序排列烦感,每個(gè)值所在位置都有一個(gè)編號巡社,稱其為索引,我們可以通過索引訪問其對應(yīng)值手趣。
其實(shí)字符串就是序列結(jié)構(gòu)晌该,除此之外常見的序列結(jié)構(gòu)還包括列表、元組等绿渣。
2.基本使用方法
2.1 索引
序列索引支持非負(fù)數(shù)和負(fù)數(shù)朝群,索引為非負(fù)數(shù),從 0 開始中符,如下所示:
索引為負(fù)數(shù)由右向左計(jì)數(shù)姜胖,從 -1 開始,如圖所示:
以字符串為例舟茶,如下所示:
str = 'Python'
print('str[0] str[-6] =', str[0], str[-6])
print('str[5] str[-1] =', str[5], str[-1])
輸出結(jié)果:
str[0] str[-6] = P P
str[5] str[-1] = n n
從結(jié)果來看谭期,我們使用非負(fù)數(shù)索引與負(fù)數(shù)索引得到的結(jié)果一致。
2.2 切片操作
切片操作可以訪問一定范圍內(nèi)的元素吧凉,語法如下所示:
sname[start : end : step]
sname:表示序列的名稱隧出;
start:開始索引位置(包括該位置),默認(rèn)為 0阀捅;
end:表示切片的結(jié)束索引位置(不包括該位置)胀瞪,默認(rèn)為序列的長度;
step:步長饲鄙。
以字符串為例凄诞,如下所示:
str = 'Python'
print(str[:3])
print(str[3:])
print(str[:])
輸出結(jié)果:
Pyt
hon
Python
2.3 相加
Python 支持類型相同的序列使用 + 作相加操作,該操作不會去除重復(fù)的元素忍级。以字符串為例帆谍,如下所示:
str1 = 'Python'
str2 = 'Python'
print('str1 + str2 --> ',str1 + str2)
輸出結(jié)果:
str1 + str2 --> PythonPython
2.4 相乘
Python 中,使用數(shù)字 n 乘以一個(gè)序列會生成新的序列轴咱,內(nèi)容為原來序列被重復(fù) n 次的結(jié)果汛蝙。以字符串為例,如下所示:
str = 'Python'
print('2 * str --> ',2 * str)
輸出結(jié)果:
2 * str --> PythonPython
2.5 檢查元素是否包含在序列中
Python 使用 in 關(guān)鍵字檢查某元素是否為序列的成員朴肺,語法如下:
val in seq
val:要檢查的元素窖剑;
seq:指定的序列。
以字符串為例戈稿,如下所示:
str = 'Python'
print('on'in str)
輸出結(jié)果:
True
2.6 內(nèi)置函數(shù)
len()—— 計(jì)算序列的長度
max()——找出序列中的最大元素
min()——找出序列中的最小元素
list() ——將序列轉(zhuǎn)換為列表
str() ——將序列轉(zhuǎn)換為字符串
sum()——計(jì)算元素的和
sorted()——對元素進(jìn)行排序
enumerate()——將序列組合為一個(gè)索引序列西土,多用在 for 循環(huán)中
舉例,如下所示:
str = 'dbcae'
print('len -->', len(str))
print('max -->', max(str))
print('sorted -->', sorted(str))
輸出結(jié)果:
len --> 5
max --> e
sorted --> ['a', 'b', 'c', 'd', 'e']