《 Python List列表全实例详解系列(四)》
__列表删除元素(4种方法)删除重复元素(去重)(8种方法)
我的技术成长&学习资料整理分享之路
我遇到问题查找资料时,经常会发现打开的文章10篇中有9篇基本是一样的,费时费力,于是萌生了分享整理好的资料的念头。
5月开启了我的第一个也是唯一的一个博客:/weixin_69553582?type=blog,博客名:逆境清醒。
我的博客文章不多,39篇,但大多数都是1万字左右认真整理的学习经验资料。
我没有向任何人推我的博客,点赞收藏全凭文章阅读者自己判断是否有用:
评论不多,但每一个都是发自自愿的评论,给了我文章的肯定。这就是我在自己学习过程中分享学习资料的意义。让我开始写《 Python List列表全实例详解系列》。现在这篇《 Python List列表全实例详解系列(四)》__列表删除元素(4种方法)删除重复元素(去重)(8种方法)就是其中一篇。
在编程开发中,我们经常会踩坑,以为代码没有错,可结果往往出乎我们意料。
发生这种bug的原因在于我们对基础知识掌握不够全面,理解不透彻。
例如,我们用listname.remove(i)删除2列表时,
当重复的数据都是不相邻的情况下,使用一般的remove()代码循环就能够达到预期的删除效果。
mlist=[3,2,3,8,3,2,5]
print("原列表是:",mlist)
for i in mlist:
if i==3:
mlist.remove(i)
print("删除重复数3后的列表是:",mlist)
运行结果
原列表是: [3, 2, 3, 8, 3, 2, 5]
删除重复数3后的列表是: [2, 8, 2, 5]
当重复的数据当中有重复数据是相邻的情况下,有的时候只能删除部分重复元素,不能达到我们想要的删除所有重复元素的效果,这时需要在代码当中添加一些判断。
mlist=[3,2,3,3,8,2,5]
print("原列表是:",mlist)
for i in mlist:
if i==3:
mlist.remove(i)
print("删除重复数3后的列表是:",mlist)
运行结果
原列表是: [3, 2, 3, 3, 8, 2, 5]
删除重复数3后的列表是: [2, 3, 8, 2, 5]
解释: 运行结果还有重复数3未能删除,说明代码需要改进。
在列表的for循环过程中,删除一个元素将使所有后续元素向左移动一个位置,而i却是在最初就已经确定了,因此在下一次迭代中,一个元素将被跳过,普通操作并不能得到想要的结果(remove()清空列表)。for语句正序使用remove()不能清空列表,注意不要踩坑。
下面让我们一起学习一下list列表删除相关的知识吧
接上一篇:《 Python List 列表全实例详解系列(三)》__列表添加元素(4种方法)
本篇目录:
六、list 列表删除元素(4种方法)
(6.1)、del 根据索引值删除元素
(6.2)、pop() 根据索引值删除元素
(6.3)、remove() 根据元素值进行删除元素
(6.4)、clear() 删除列表所有元素
七、删除列表中重复的元素的方法
①方法一:使用set()函数去重
②方法二:使用list()+set()函数的方式
③方法三:使用count()函数和remove()函数去重
④方法四:使用列表推导的方式去重
⑤方法五:使用列表倒序remove方式去重
⑥方法六:使用while方式去重
⑦方法七:使用fromkeys()函数方式去重
⑧方法八:使用drop_duplicates()方法处理重复值去重
八、删除列表中的空值元素
方法一:使用while循环的的方式
方法二:抽取非空的列表元素,存储到新的列表中
方法三:通过count()计算空值元素个数,再遍历列表删除
六、list 列表删除元素(4种方法)
要将元素从列表中删除,处理方法有以下几种:
(1)、根据元素所在位置的索引进行删除,可以使用 del 关键字或者 pop() 方法;
(2)、根据元素本身的值进行删除,可使用列表(list类型)提供的 remove() 方法;
(3)、将列表中所有元素全部删除,可使用列表(list类型)提供的 clear() 方法。
七、删除列表中重复的元素的方法
八、删除列表中的空值元素
实际应用中,列表中可能会有我们不需要的空值元素,为提高列表操作效率,我们有时会选择将列表中的空值元素删除。那怎样才能将列表中的空值元素删除干净呢?
有几个误区一定要注意避免:
说明代码有问题,不能全部清除列表当中的空值元素,还有4个空值元素留在列表里。
经过查找资料和自己思考,我发现有三种方式可以正确删除列表当中的空值元素,或许还有其他的,如有会更新此部分。
请点击下一章查看后续实例详解 ------》
推荐阅读:
《 Python List列表全实例详解系列(四)》__列表删除元素(4种方法)删除重复元素(去重)(8种方法)