- 序列是一块用于存放多个值的连续内存空间,并且按上一定顺序排列,每一个值(称为元素)都分配一个数字,称为索引或位置。通过该索引可以取出相应的值。例如,我们可以把一家酒店看作一个序列,那么酒店里的每个房间都可以看作是这个序列的元素。而房间号就相当于索引,可以通过房间号找到对应的房间。
- 在Python中,序列结构主要有列表、元组、集合、字典和字符串,对于这些序列结构有以下几个通用的操作。其中,集合和字典不支持索引、切片、相加、和相乘操作。
1.序列_索引
# coding=utf-8
# @time : 2020/1/13 11:26
# @Author : fan
# @File : 序列_索引.py
string="失望之酒,希望之杯。"
print(string[1])#索引正数,从0开始,从左往右
print(string[-2])#索引负数,从右往左,标点也算
运行结果
2.序列_切片
切片操作是访问序列中元素的另一种方法,它可以访问一定范围内的元素。通过切片操作可以生成一个新的序列。实现切片操作的语法格式如下:
sname[start : end : step]
- 参数说明: sname:表示序列的名称。 start:表示切片开始位置(包括该位置),如果不指定,则默认为0。
end:表示切片的截止位置(不包括该位置),如果不指定,则默认为序列的长度。
step:表示切片的步长,如果省略,则默认为1,当省略该步长时,最后一个冒号也可以省略。 - 说明:在进行切片操作时,如果指定了步长,那么将按照该步长遍历序列的元素,否则将一个一个遍历序列。
# coding=utf-8
# @time : 2020/1/15 11:03
# @Author : fan
# @File : 序列_切片.py
string=["hello",'世界',"5","2","0"]
print(string[1:5])
print(string[0:5:2])
运行结果
3.序列_相加
- 在Python中,支持两种同类型的序列相加操作,即将两个序列进行连接,不会去除重复的元素,使用(+) 运算符实现。
# coding=utf-8
# @time : 2020/1/16 21:03
# @Author : fan
# @File : 序列_相加.py
string1=["hello","world","I","love","you"]
string2=["5","2","0"]
print(string1+string2)
运行结果
4.序列_乘法
- 简单来说,原序列内的内容重复n次。
- 序列*n
# coding=utf-8
# @time : 2020/1/16 21:11
# @Author : fan
# @File : 序列_乘法.py
string1=["I","love","you"]
print(string1*3)
运行结果
5.检查某个元素是否为序列中的成员
- 语法1:value in sequence
- 语法2:value not in sequence
- 用in表示是否为序列的成员//not in表示是否不包含在序列列表中
- True
- False
# coding=utf-8
# @time : 2020/1/16 21:28
# @Author : fan
# @File : 序列_检查某个元素是否为序列中的成员.py
string1=["I","love","you"]
print(1 in string1)
print("I" in string1)
print("love" not in string1)
运行结果
6.计算序列的长度,最大值,最小值
- len()函数表示序列的长度
- max()函数表示序列中的最大值
- min()函数表示序列中的最小值
# coding=utf-8
# @time : 2020/1/16 21:53
# @Author : fan
# @File : 序列_长度、最值.py
num=[7,12,24,23,22,44,66,71,45,32,56]
print("序列",num,"的长度为",len(num))
print("序列",num,"的最大值为",max(num))
print("序列",num,"的最小值为",min(num))
print("序列",num,"大小为\n",sorted(num))
运行结果
- 内置函数
函数 | 作用 |
---|---|
list() | 将序列转换为列表 |
str() | 将序列转换为字符串 |
sum() | 计算元素和 |
sorted() | 对元素进行排序 |
reversed() | 反向序列中的序列 |
enumerate() | 将序列组合为一个索引序列,多用在for循环 |
len() | 计算序列长度 |
max() | 计算列表中的最大值 |
min() | 计算列表中的最小值 |
# coding=utf-8
# @time : 2020/1/16 22:11
# @Author : fan
# @File : 序列_复盘.py
string1=[1,2,3,4,5,6,7,8,9]
string2=[8,7,6,5,4,3,2,1,0]
print(string1[3],string2[-3]) #索引
print(string1[1:9:2],string2[2:4:2]) #切片
print(string1+string2) #相加
print(string2*2,string1*1) #乘法
print(9 in string2,1 in string1) #检查
print(len(string2),len(string1)) #长度
print(max(string2),min(string1)) #最值
运行结果