通用序列操作包括:索引、切片、相加、相乘和成员资格检查。此外,Python还提供了一些内置函数,可用于确定序列的长度以及找出序列中最大和最小的元素。迭代根据书的节奏后面再整理。
一、索引
序列中的所有元素都有编号,也就是索引。索引从0开始递增,0指向第一个元素。也可以用负数进行索引,-1指向倒数第一个元素。
>>> greeting = '你好,我是红领巾'
>>> greeting[0]
'你'
>>> greeting[1]
'好'
>>> greeting[-1]
'巾'
>>>
获取用户输入时,也可以用到索引。比如,你只想获取用户输入的第四位。
>>> x = input()[3]
12345
>>> x
'4'
>>>
二、切片
索引用于访问单个元素,切片可以访问指定范围内的元素。需要使用两个索引来表示范围,用冒号分割。
第一个索引是包含的第一个元素的编号,第二个索引是切片后余下的第一个元素的编号
1、正序切片
>>> date = '2021-07-30'
>>> year = date[0:4]
>>> year
'2021'
2、倒序切片
由于右侧索引所在元素并不在切片范围内,当使用负数索引定位序列末尾元素时,会发现永远无法获取最后一个元素。所以我们可以省略第二个索引,代表索引1及其之后的元素。
>>> date = '2021-07-30'
>>> day = date[-2:-1]
>>> day
'3'
>>> day = date[-2:]
>>> day
'30'
3、省略索引
>>> date = '2021-07-30'
>>> y_m = date[:7]
>>> y_m
'2021-07'
>>> y_m_d = date[:]
>>> y_m_d
'2021-07-30'
>>>
4、切片步长
[索引1:索引2:步长]
#步长默认为1
(1)步长为正数时,从左往右提取元素
>>> 自然数 = [0,1,2,3,4,5,6,7,8,9]
>>> 奇数 = 自然数[1::2]
>>> 奇数
[1, 3, 5, 7, 9]
>>> 偶数 = 自然数[::2]
>>> 偶数
[0, 2, 4, 6, 8]
(2)步长为负数时,从右往左提取元素
>>> num = 'abcde'
>>> i = num[::-1]
>>> i
'edcba'
三、序列相加
#注意不能拼接不同类型的序列
>>> str1 = '你'
>>> str2 = '今天'
>>> str3 = '吃饭了吗?'
>>> str = str1 + str2 + str3
>>> str
'你今天吃饭了吗?'
四、乘法
运算符:*
当序列与乘数x相乘时,将会重复这个序列x此来创建一个新序列
>>> '今天天气好晴朗'*5
'今天天气好晴朗今天天气好晴朗今天天气好晴朗今天天气好晴朗今天天气好晴朗'
>>> [None]*10
[None, None, None, None, None, None, None, None, None, None]
五、成员资格
检查特定的值是否包含在序列中,可使用运算符:in
它会检查是否满足指定条件,并返回布尔值:True或False
>>> list = [1,12,123,1234] >>> 1234 in list True >>> list = [1,2,33] >>> 3 in list False >>> list = [[1,2,33],1,2,33] >>> [1,2,33] in list True >>>