开发者学堂课程【Python 入门 2020年版:列表的修改查询和删除】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/639/detail/10294
列表的修改查询和删除
内容介绍
一、Pop
二、Remove
三、Clear
四、Delete
五、查询相关的方法
六、修改元素相关
由图可知,删除数据的方法有 pop、remove和 clear三种。
一、Pop
1. 删除元素
(1) 代码讲解
//masters表法师
masters =['王昭君',‘甄姬",'貂蝉','妲己','小乔','大乔']
#删除数据有三个相关的方法 pop remove clear
# pop方法默认会删除列表里最后一个数据,并且返回这个数据
#pop还可以传入 index参数,用来删除指定位置上的数据
X=masters.pop()//将删除的最后一个元素赋给 x
print(x) //输出删除的元素
Print(masters) //输出删除后剩余的元素
(2) 输出结果:
大乔
['王昭君','甄姬','貂蝉','妲己',‘小乔']
(3) 总结:
pop方法默认会删除列表里最后一个数据,并且返回这个数据
2. 进入查看 pop方法,发现还可以根据下标对元素进行操作。
(1) 代码讲解
masters =['王昭君',‘甄姬",'貂蝉','妲己','小乔','大乔']
#删除数据有三个相关的方法 pop remove clear
# pop方法默认会删除列表里最后一个数据,并且返回这个数据
#pop还可以传入 index参数,用来删除指定位置上的数据
x = masters.pop(3) //表示删除下标为3的元素,即妲己
#pringt(x) #大乔
print(masters)
(2) 输出结果:
['王昭君',‘甄姬',‘貂蝉', '小乔','大乔']
//妲己被删除
二、Remove
1.用于删除指定元素
(1) 代码讲解
masters =['王昭君',‘甄姬','貂蝉','妲己','小乔','大乔']
#删除数据有三个相关的方法 pop remove clear
# pop方法默认会删除列表里最后一个数据,并且返回这个数据
#pop还可以传入 index参数,用来删除指定位置上的数据
x = masters.pop(3) //表示删除下标为3的元素,即妲己
print(masters) #['王昭君',‘甄姬',‘貂蝉', '小乔','大乔']
#remove用来删除指定的元素
masters.remove('小乔') //删除小乔
print(masters) //输出结果
(2) 输出结果:
['王昭君',‘甄姬',‘貂蝉', '小乔','大乔']
['王昭君',‘甄姬',‘貂蝉','大乔'] //删除小乔后的结果
2.如果数据在列表中不存在时
(1)代码讲解
masters =['王昭君',‘甄姬','貂蝉','妲己','小乔','大乔']
#删除数据有三个相关的方法 pop remove clear
# pop方法默认会删除列表里最后一个数据,并且返回这个数据
#pop还可以传入 index参数,用来删除指定位置上的数据
x = masters.pop(3)
//表示删除下标为3的元素,即妲己
print(masters) #['王昭君',‘甄姬',‘貂蝉', '小乔','大乔']
#remove用来删除指定的元素
masters.remove('小乔')
//删除其中的元素小乔
masters.remove('妲己')
//妲己已经不存在,所以删除时会报错
print(masters)
(2)输出结果:
结果显示报错,因为删除了不存在的元素
三、Clear
用来清空一个列表
1.代码讲解
masters =['王昭君',‘甄姬','貂蝉','妲己','小乔','大乔']
#删除数据有三个相关的方法 pop remove clear
# pop方法默认会删除列表里最后一个数据,并且返回这个数据
#pop还可以传入 index参数,用来删除指定位置上的数据
x = masters.pop(3)
//表示删除下标为3的元素,即妲己
print(masters) #['王昭君',‘甄姬',‘貂蝉', '小乔','大乔']
#remove用来删除指定的元素
masters.remove('小乔')
//删除其中的元素小乔
print(masters)
#clear用来清空一个列表
masters.clear()
//清空 masters列表中的所有元素
print(masters)
//输出 clear之后的结果
2.输出结果:
['王昭君',‘甄姬',‘貂蝉', '小乔','大乔'] //删除妲己后
['王昭君',‘甄姬',‘貂蝉','大乔'] //删除小乔后
[] //clear将其中所有数据都清空后
3.总结:
总共有删除 remove pop clear三种
四、Delete
1.删除相关元素
(1)代码讲解
masters =['王昭君','甄姬','貂蝉','妲己','小乔','大乔']
#删除数据有三个相关的方法 pop remove clear
# pop方法默认会删除列表里最后一个数据,并且返回这个数据
#pop还可以传入 index参数,用来删除指定位置上的数据
x = masters.pop(3)
//表示删除下标为3的元素,即妲己
print(masters) #['王昭君',‘甄姬',‘貂蝉', '小乔','大乔']
#remove用来删除指定的元素
masters.remove('小乔')
print(masters)
//输出删除小乔后的结果
#使用 del 也可以删除一个数据
del masters[ 2 ]
//删除下标为2的元素-貂蝉
print(masters)
//输出结果
#clear用来清空一个列表
#masters.clear()
//清空列表
#print(masters)
(2)输出结果:
['王昭君',‘甄姬',‘貂蝉', '小乔','大乔']
['王昭君',‘甄姬',‘貂蝉','大乔']
['王昭君',‘甄姬','大乔']
2.慎用 del
(1) 代码讲解
a=100 //定义变量 a
del a //删除变量 a
print(a) //输出 a
(2) 输出结果:
删除变量 a后,变量会被整个删除,无法再输出,所以报错。
(3) 总结:
最好不要用 del来删除元素,优先使用其他方法。因为 del操作过后,变量会被整个删除。
五、查询相关的方法
1.Index
查询下标
(1) 元素存在时
① 代码讲解
tanks =['亚瑟',‘程咬金',‘盾山',‘张飞','廉颇']
#查询相关的方法
print(tanks.index('盾山')) //查询盾山所在的下标
② 输出结果:
2
(2) 元素不存在时
① 代码讲解
tanks =['亚瑟',‘程咬金',‘盾山',‘张飞','廉颇"]
#查询相关的方法
print(tanks.index('盾山'))
print(tanks .index('庄周')) //判断元素是否存在,如果元素不存在,会报错
② 输出结果:
//显示列表中不存在庄周,报错
2.Count
判断元素个数
(1) 代码讲解
tanks =['亚瑟',‘程咬金',‘盾山',‘张飞','廉颇','程咬金'] //tanks表坦克
#查询相关的方法
print(tanks.index('盾山')) #2
#print(tanks .index('庄周'))
如果元素不存在,会报错
print(tanks.count('程咬金')) #2
//判断有元素个数
(2) 输出结果:
2 //盾山所在的下标
2 //程咬金的个数
3. In运算符
判断元素是否存在
(1) 代码讲解
tanks =['亚瑟',‘程咬金',‘盾山',‘张飞','廉颇','程咬金']
#查询相关的方法
print(tanks.index('盾山')) #2
#print(tanks .index('庄周'))
如果元素不存在,会报错
print(tanks.count('程咬金'))
#2 //判断有元素个数
#in运算符
print('张飞' in tanks) #Ture
print('苏烈' in tanks) #False
(2) 输出结果:
2
2
True //说明张飞在这个列表中
False//说明苏烈不在列表之中
(3) 总结:
与查询相关的方法主要就是 idex 和 count 两个方法,此外还有一个 in运算符用来判断列表中是否存在元素。
六、修改元素相关
1.代码讲解
tanks =['亚瑟',‘程咬金',‘盾山',‘张飞','廉颇','程咬金']
#查询相关的方法
print(tanks.index('盾山')) #2
#print(tanks .index('庄周')) 如果元素不存在,会报错
print(tanks.count('程咬金')) #2 //判断有元素个数
#in运算符
print('张飞' in tanks) #Ture
print('苏烈' in tanks) #False
#修改元素
#使用下标可以直接修改列表里的元素
tanks[5] ='铠'
//通过最后一个元素-程咬金的下标5来修改
//修改列表最后一个程咬金,变成凯
print(tanks)
//输出结果
2.输出结果:
2
2
True
False
//最后一个元素变为凯
['亚瑟',‘程咬金',‘盾山',‘张飞','廉颇','凯']