序列是用于存放多个值得连续空间,并按一定顺序排列,每一个值(称为元素)都分配一个数,称为索引或位置。通过该索引可以取出相应的值。
索引
序列中的元素都是有序的、拥有自己编号(
从0开始
),我们可以通过索引得到序列中对应的元素,索引也可以为负值,负数索引表示从右往左开始计数,最后一个元素索引为-1,倒数第二为-2,以此类推.
示例代码:
"""
[1, 2, 3, 4, 5, 6]
0 1 2 3 4 5 <--------索引(下标)对应关系
"""
verse = [1, 2, 3, 4, 5, 6]
print("verse下标为0对应的值是:", verse[0])
print("verse下标为3对应的值是:", verse[3])
print("verse下标为-1对应的值是:", verse[-1])
执行结果:
verse下标为0对应的值是: 1
verse下标为3对应的值是: 4
verse下标为-1对应的值是: 6
切片(分片)
使用索引可以获取单个元素,使用分片可以获取序列中指定范围内的元素.切片操作符[:]/[::],使用方式
obj[start_index:end_index]
表示获取从start_index
开始到end_index-1
结束所有索引对应的元素,切片中冒号左边索引对应的元素晚于右边索引对应元素出现时,返回结果是[]
示例代码:
verse = [1, 2, 3, 4, 5, 6]
"""注意序列的0到5是不包括下标为5的"""
print("输出0到5:", verse[0:5])
print("输出1到2:", verse[1:2]) #1到2是不包括下标为2的所以只会输出2
print("输出整个序列:", verse[:])
print("输出从2到结束:", verse[2:])
print("输出5之前的:", verse[:5])
print("输出超过最大长度:", verse[:10])
执行结果:
输出0到5: [1, 2, 3, 4, 5]
输出1到2: [2]
输出整个序列: [1, 2, 3, 4, 5, 6]
输出从2到结束: [3, 4, 5, 6]
输出5之前的: [1, 2, 3, 4, 5]
输出超过最大长度: [1, 2, 3, 4, 5, 6]
序列相加
两种相同的序列才可以进行加法操作
示例代码:
one = [1, 2, 3, 4, 5]
two = [1, 2, 34]
print(one + two)
执行结果:
[1, 2, 3, 4, 5, 1, 2, 34]
序列相乘
示意代码:
one = [1, 2, 3, 4, 5]
print(one * 3)
执行结果:
[1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]
检查元素是否是序列成员
使用:value in sequence
示例代码:
one = [1, 2, 3, 4, 5]
print(1 in one)
执行结果:
True
检查元素是否不是序列成员
使用:value in sequence
示例代码:
one = [1, 2, 3, 4, 5]
print(1 not in one)
执行结果:
False
计算序列的长度
使用:len()
示例代码:
one = [1, 2, 3, 4, 5]
print(len(one))
执行结果:
5
计算序列最大值
使用:max()
示例代码:
one = [12, 2, 3, 4, 5]
print(max(one))
执行结果:
12
计算序列最小值
使用:min()
示例代码:
one = [12, 2, 3, 4, 5]
print(main(one))
执行结果:
2
常用函数和方法
函数 | 描述 |
---|---|
+ | 使用加号可以进行序列的连接操作,原序列内容没有改变,数字序列可以和数字序列通过加号连接,连接后的结果还是数字序列;字符串序列也可以通过加号连接,连接后的结果还是字符串序列;数字序列和字符串序列不能通过加号连接 |
* | 一个数x乘以一个序列会生成新的序列,原来的序列将被重复x次 |
s[i] | 访问指定下标元素 |
s[i:j] | 访问指定范围元素 |
s[i:j:k] | 取值从i到j步长为k |
in | 检测字符或数字是否在对应的列表中,返回值为True或False,数字类型不能再字符串类型中通过in进行成员资格检测,而字符串类型可以在数字列表中通过in进行成员资格检测 |
not in | 判断成员不在序列中 |
len() | 求序列中的长度,并将之返回 PS:从1开始计数,没有计算结束标志位 |
min() | 求序列中的最小值,并将之返回(ASCII顺序) |
max() | 求序列中的最大值,并将之返回(ASCII顺序) |
sum() | 统计求和 |
.index() | 检索元素第一次出现下标 |
.count() | 统计元素出现的次数 |
del obj | 删除对象 或对象中的元素 |
list() | 将序列转换为列表 |
str() | 将序列转换为字符串 |
sum() | 对元素进行求和 |
sorted() | 对元素进行排序 |
reversed() | 反向序列中的元素 |
enumerate() | 将序列组合为一个索引序列,多在for循环使用 |
enumerate() 示例代码:
one = [12, 2, 3, 4, 5]
two = enumerate(one) # 会标记这个序列序列及对应的值(如:1(下标) 2(值))
for index, value in two:
# print(index, value)
if index == 1:
print(value)
执行结果:
2