7.列表
一、序列
1.序列的概念
- 序列是Python中最基本的一种数据结构。序列用于保存一组有序的数据,所有的数据在序列当中都有一个唯一的位置(索引)并且序列中的数据会按照添加的顺序来分配
- 数据结构指计算机中数据存储的方式
2.序列的分类
- 可变序列(序列中的元素可以改变):例如:列表(list) 字典(dict)
- 不可变序列(序列中的元素不能改变):例如:字符串(str) 元组(tuple)
二、列表
1.简介
- 列表是Python中的一个对象
- 列表的作用:列表可以保存多个有序的数据。
- 列表是用来存储对象的对象
2.列表的使用
- 列表的创建:通过[]来创建一个空列表
2.切片
-
切片概念:切片是指从现有列表中获得一个子lieb
-
作用:通过切片来获取指定的元素
-
语法:列表[起始:结束:步长]
-
通过切片获取元素时会包括起始位置的元素,不会包括结束位置的元素
-
起始位置和结束位置的索引可以不写
- 如果省略结束位置,则会从当前的开始位置一直截取到最后
- 如果省略开始位置,则会从第一个元素截取到结束的元素,但不包括结束的元素
- 如果开始位置和结束位置都省略,则会从第一个元素开始截取到最后一个元素
-
步长表示每次获取元素的间隔,默认是1(可以省略不写)
-
步长不能是0,但可以是负数
三、通用操作
-
+和*
- +可以将两个列表拼接成一个列表
- 可以将列表重复指定的次数(2个列表不能够做乘法,要和整数做乘法运算)
-
in和not in
- in用来检测指定元素是否在列表中
- not in 用来检查指定元素是否不再列表当中
-
len()获取列表中元素的个数
-
max()获取列表中的最大值
-
min()获取列表中的最小值
-
list.index(x[,start[,end]])
- 第一个参数:获取指定元素在列表中的位置
- 第二个参数:表示查找的起始位置
- 第三个参数:表示查找的结束位置
-
list.count(x)统计指定元素在列表中出现的个数
四、修改列表
-
通过切片来修改(起始就是给切片的内容重新赋值,但是赋值的内容必须是一个序列)
-
当设置了步长时,序列中元素的个数必须和切片中元素的个数保持一致
-
通过切片来删除元素
-
del list[起始:结束]
-
list[]
-
五、列表的使用方法
-
append()向列表的最后添加一个元素
-
insert(arg1,arg2)向列表指定位置插入一个元素 :
参数1:要插入的位置 参数2:要插入的元素
-
extend(iterable)使用一个新的序列来扩展当前序列(它会将该序列的中元素添加到列表中)参数需要传递一个序列
-
pop()根据索引删除并返回指定元素
-
remove()删除指定元素(如果相同值的元素有多个,只会删除第一个)
-
reverse()翻转列表
-
sort(key=None,reverse=False)用来对列表中的元素进行排序reverse:True反序;False正序
六、遍历列表
1.for循环
- 语法
for 变量 in序列(遍历的规则):
代码块
- 注意:for循环的代码块会执行多次,序列中有几个元素就会执行几次。每执行一次就会将序列中的一个元素赋值给变量,所以通过变量来获取列表上中的元素
2.range(start,stop[,step])
- start:计数从start开始,默认是从0开始。例如range(5)等价以 range(0,5)
- stop:计数到stop结束,但不包括stop。例如range(0,5) 等价于 range(0,5,1)
七、作业
现在有 a = [1,2,3,4,5,6] 不通过函数的形式实现列表的反转([6,5,4,3,2,1]) ,并写出推导过程
a = [1,2,3,4,5,6]
a.sort(reverse=True)
print(a)
a = [1,2,3,4,5,6]
a.reverse()
print(a)
a = [1,2,3,4,5,6]
print(a[::-1])
XMind - Trial Version