一.序列的基本概念
1.1 序列
是python中最基本的一种数据结构,用于保存一组有序的数据。
所有的数据在序列当中都有唯一的位置(索引)并且序列中的数据会按照添加的顺序来分配索引,我们可以通过索引来获取序列中的某个元素,索引是从0开始的。
数据结构指数据在计算机中的存储方式。
1.2 序列分为
1.可变序列
例如:列表
2.不可变序列
例如:元组,字符串
索引是从0->1->2开始的
2.1 切片
做切片操作时,总是会返回一个新的列表,但不会影响原来的列表。
hello = [‘钢铁侠’,‘蜘蛛侠’,‘黑寡妇’,‘美国队长’,‘蚁人’]
print(hello[1:])
输出结果:[‘蜘蛛侠’, ‘黑寡妇’, ‘美国队长’, ‘蚁人’]
解释:输出从1开始到最后一个元素。
print(hello[1:4])
输出结果:[‘蜘蛛侠’, ‘黑寡妇’, ‘美国队长’]
解释:输出第一个元素到第四个元素,但不包括第四个元素。
print(hello[:4])
输出结果:[‘钢铁侠’, ‘蜘蛛侠’, ‘黑寡妇’, ‘美国队长’]
解释:输出第0个元素到第四个元素,但不包括第四个元素。
print(hello[ : ])
输出结果:[‘钢铁侠’, ‘蜘蛛侠’, ‘黑寡妇’, ‘美国队长’, ‘蚁人’]
解释:输出从第0个元素到最后一个元素
2.2 步长
print(hello[::2])
输出结果:[‘钢铁侠’, ‘黑寡妇’, ‘蚁人’]
解释:输出时,每次隔两个元素输出
[0,1,2,3,4] 输出0,2,4
print(hello[::0])
步长不可以为0。
如果步长为负数,那么步长是从列表的后面开始输出。
3.0 通用操作
lst = [1,2,3]+[4,5,6]
输出结果为:[1, 2, 3, 4, 5, 6]
解释:表示将两个列表拼接为一个列表。
lst = [1,2,3]*2
输出结果为:[1, 2, 3, 1, 2, 3]
解释:将列表中的元素指定重复次数。
lst = [1,2,3]*[1,2,3]
输出结果:TypeError: can't multiply sequence by non-int of type 'list'
解释:不能将列表乘以列表。
3.1 in 和not in
hero = ['钢铁侠','蚁人','美国队长','蜘蛛侠']
print('绿巨人'in hero)
输出结果为:False
解释:in是用来检测指定的元素是否在列表当中,如果在则返回True,不在则返回False。
hero = ['钢铁侠','蚁人','美国队长','蜘蛛侠']
print('绿巨人'not in hero)
输出结果为:True
解释:not in 检测指定元素是否不在列表中,不在则返回True,否则返回False。
3.2 max()和min()
max()最大值
min()最小值
用途:输出列表中的最大值和最小值
lst = [ 1,2,4,6,888,9999]
print(max(lst),min(lst))
输出结果为:9999,1
3.3 方法和函数的区别
3.1 区别
方法: 方法必须通过
对象.方法() xxx.yyy()
方法也可以说是特殊的函数。
print(ro.count(‘美国队长’))
函数: zzz(),它是可以直接调用的。
type()
3.2 常用
(1)s.index(’ ‘)
查找列表指定元素的位置
ro = [‘钢铁侠’, ‘蚁人’, ‘美国队长’, ‘蜘蛛侠’,‘钢铁侠’]
print(ro.index(‘钢铁侠’,3))
3:代表起始位置
(2) s.count(’ ')
list.count(x) 统计指定元素在列表中出现的个数
4.0修改列表
4.1 通过切片来修改(起始就是给切片的内容重新赋值,但是赋值的内容必须是一个序列)。
4.2 当设置了步长时,序列中元素的个数必须和切片中元素的个数保持一致。
4.3 通过切片来删除元素.
del list[起始 : 结束]
list = []
5.0 列表的方法
5.1 append() 像列表的最后添加一个元素。
5.2 insert(arg1,arg2) 像列表指定位置插入一个元素 参数1:要插入的位置 参数2:要插入的元素.
5.3 extend(iterable) 使用一个新的序列来扩展当前序列(它会将该序列的中元素添加到列表中) 参数需要传递一个序列.
5.4 pop() 根据索引删除并返回指定元素.
5.5 remove() 删除指定元素 (如果相同值的元素有多个,只会删除第一个)
5.6 reverse() 翻转列表
5.7 sort(key=None,reverse=False) 用来对列表中的元素进行排序 reverse:True反序;False 正序.
6.0 遍历列表
6.1 for循环
通过for循环来遍历列表
语法
for 变量 in 序列(遍历的规则):
代码块
注意: for循环的代码块会执行多次,序列中有几个元素就会执行几次。每执行一次就会将序列中的一个元素赋值给变量,所以我们可以通过变量来获取列表中的元素。
6.2range(start, stop[, step])
start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于
range(0, 5)。
stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5。
step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)