序列(sequence)
序列(sequence)
序列是python中最基本的一种数据结构
数据结构指的是计算机中数据存储的方式
序列用于保存一组有序的数据,所有的数据在序列中都有一个唯一的位置(序列)
并且序列中的数据会按照日安家的顺序来分配索引
序列的分类:
range()
是一个函数,可以生成一个自然数的序列
r=range(5) 生成一个这样的序列[0,1,2,3,4]
r=range(0,10,2)
r=range(10,0,-1)
该函数需要三个参数
1.起始位置(可以省略,默认是0)
2.结束位置
3.步长(可以省略不写,默认是1)
print®
通过range()可以创建一个执行的指定次数的for循环
for()循环除了创建方式以外,其余都和while一样
包括else,包括break,continue都可以在for中使用
for i in range(10)
print(i)
可变序列(序列中的元素可以改变)
列表(list)
列表时python中的一个对象
对象就是内存中专门用来存储数据的一块区域
之前我们学习的对象,数值,她只能保存一个单一的数据
列表可以保存多个有序的数据
列表的使用:
1.列表的创建
1.创建列表,通过[]来创建列表
my_list=[] #创建一个空列表
2.列表存储的数据,我们称为元素
3.一个列表中可以储存多个元素,也可以在创建列表时指定 列表的元素
my_list = [10,2,3,4,5]
4.列表可以保存任意的对象
5.列表是用来存储对象的对象
6.列表中的对象都会按照插入的顺序存储到列表中
第一个插入的对象保存到第一个位置,
2.操作列表中的数据
7.我们可以通过索引来获取元素
8.索引是元素在列表中的位置,列表中的每一个元素都有一个索引
9.索引是从0开始的,列表第一个位置为0,第二个位置索引为1
10.通过索引来获取列表中的元素
my_list[0]
11.如果使用索引超过了最大的范围,会抛出异常
12.获取列表中的长度,列表中元素的个数
len(my_list)函数可以获取列表中的长度
获取的长度的值是列表的最大长度+1
3.切片
切片指的是从现有列表中获取一个子列表
创建一个列表,一般创建列表时,变量的名字会使用复数
列表的索引可以是负数,如果索引是负数,则从后向前获取元素,-1指的是倒数第一个
通过切片来获取指定的元素
语法:列表[起始,结束]
通过切片获取元素时,会包括起始位置不会包括结束位置的元素
切片获取元素时会返回一个新的列表,不会影响原来的列表
起始位置和结束位置的所有都可以省略不写
如果开始位置和结束位置都省略,则相当于创建了一个列表的副本
语法:列表[起始:结束:步长]
步长不能是0,可以是负数,如果是负数,则从后向前取
+和*
+可以将两个列表拼接成一个列表
my_list=[1,2,3]+[4,5,6]
*可以将列表重复指定的次数
my_list=[1,2,3]*5
in和not in
in用来检查指定元素是否存在于列表中
如果存在则返回True
not in检查指定元素是否不存在列表中
如果不在则返回True
print(‘牛魔王’ in stru)
min()
获取列表中的最小值
max()
获取列表中的最大值
两个方法(method)
方法和函数基本上是一样的,只不过方法必须通过对象.方法()的形式调用
xxx.print()方法实际上就是和对象关系紧密的函数
s.index()获取指定元素在列表中的第一次出现的索引
print(stus.index(‘沙和尚’))
index()的第二个参数,表示查找的起始位置,第三个参数表示查找的结束位置
print(stus.index(‘沙和尚’),3,7)
如果要获取列表中没有的元素会出现抛出异常
s.count()统计元素在列表中出现的次数
print(stus.count(‘牛魔王’))
修改列表中的元素
1.直接通过索引来修改元素
stus[2]=‘sun’
2.可以通过del索引删除元素
del stus[2]