列表基础操作
一、查单个
- 格式:列表【索引】
二、切片
- 一次获取列表中多个元素(获取部分元素)
1、切片的完整语法
-
格式:
列表【开始下标:结束下标:步长】
-
怎么确定切片的结果
- 第一步:看切片结果书否为空(从开始下表的位置,到结束下标的方向和步长对应方向是否一致,如果不一致,结果肯定为空列表)
- 第二步:肯定有效范围(开始对应下标的元素能取到,结束对应下标的元素不能取到)
- 第三步:在有效范围内按步长取元素 步长的正负:步长为正,在有效范围内从前往后取;步长为负在有效范围内从后往前取 步长的绝对值:为1,一个一个取;为2,取一个,跳一个;为3,取一个,跳两个...
-
切片的代码怎么写
- 确定开始下标的值:需要获取的第一个元素对应的下标
- 确定结束下标的值:需要获取的结果的最后一个元素后面一个元素/后面一个元素对应的下标(看方向)
- 确定步长:确定方向(从前向后为正,反之为负)和绝对值
2、切片的省略写法
- 省略步长:列表【开始下标:结束下标】 ————步长为1
- 省略开始下标:*列表【:结束下标:步长】 ————*从头(可能最前、最后)开始,由步长决定
- 省略结束下标:*列表【开始下标::步长】 ————*从开始下标开始,从步长方向一直取到最后/最前
三、遍历
- 将列表中的元素一个个取出来
方法一:
for 变量 in列表:
循环体(变量依次取到的就是列表中的每个元素)
方法二:
#先获取每个元素的下标值
#然后再利用下标获取元素
for index in range(len(列表名)):
循环体(变量依次获取到的是元素的下标值)
方法三:
for index,item in enumerate(列表名):
循环体(变量一依次取到的是每个元素对应的下标,变量二依次取到的是每个元素)
四、增(增加元素)
1、列表.append(元素)
- 在指定列表最后添加指定的元素
#案例1:提取scares中不低于80分的成绩
scares = [89,78,99,34,67,77,80,82,85,90,55]
scares_1 = []
for i in range(len(scares)):
if scares[i]>=80:
scares_1.append(scares[i])
#案例2:将scores中所有低于60分的成绩变成'补考'
scares = [89, 78, 99, 34, 67, 77, 80, 82, 85, 90, 55]
# [89, 78, 99, '补考', 67, 77, 80, 82, 85, 90, '补考']
scares_2 = []
for i in range(len(scares)):
if scares[i]<60:
scares_2.append('补考')
else:
scares_2.append(scares[i])
print(scares_2)
2、列表.insert(下标,元素)
- 将指定元素插入到指定下标的前面
games = ['王者荣耀','英雄联盟','和平精英','原神']
games.insert(1,'开心消消乐')
print(games)
五、删(删除操作)
1、del 列表【下标】
- 删除列表中指定下标对应的元素(后面元素会补上空位,索引会变)
2、列表.remove(元素)
- 删除列表中的指定元素
- 注:
- 1、如果列表中没有这个元素,会报错
- 2、如果元素有多个,只删最前面那个
3、pop
- *列表.pop() ————*取出列表中最后一个元素并返回
- *列表.pop(下标) ————*取出列表按中指定一个元素并返回
#实例:
tvs = ['亮剑','甄嬛传','如懿传','爱情公寓','知否','康熙王朝','三国演义','流星花园','武林外传']
tvs.pop()
result =tvs.pop()
print(tvs,result)
六、改(修改元素的值)
- *列表[下标] = 数据 ————*将列表中指定下标对应的元素改成指定的数据
七、列表相关运算
1、列表加法与乘法运算
- 列表一 + 列表二 ————将两个列表合成一个新列表列表一在前
- 列表 * 正整数 ————将列表中的元素重复n次,产生一个新列表
2、列表的比较运算
1、比较是否相等
- 每个元素和元素对应的索引全部相等才相等
2、比较大小
列表1 > 列表2
原则:比较第一对不相等的元素的大小(元素的索引相同称一对)
3、in 和 not in
数据 in 列表 ————判断列表中是否有这个数据对应的元素
*数据 not in 列表 ————*判断列表中是否不存在指定数据对应的元素