Python列表去重且不改变元素顺序的代码
【摘要】 Python列表去重,如果不考虑原来元素的顺序(基本顺序)的话,可以使用Python内置的set()函数对列表进行转换去重,然后转换会列表,这是因为set()集合本身就具备去重的功能,但Python的集合又是无序的,因此可能会导致列表中元素原本排列顺序的改变。那要在不改变列表元素顺序的前提下
Python列表去重且不改变元素顺序的方法
Python列表去重,如果不考虑原来元素的顺序(基本顺序)的话,可以使用Python内置的set()函数对列表进行转换去重,然后转换会列表,这是因为set()集合本身就具备去重的功能,但Python的集合又是无序的,因此可能会导致列表中元素原本排列顺序的改变。那要在不改变列表元素顺序的前提下该如何“删除”掉重复的元素呢?
这里探讨的去重方法,实际上并不是使用删除元素的方法,相反使用的是添加元素的方法,即声明一个用于最终返回的列表,用于添加该返回的列表list内没有的元素,这比删除元素要精确一些,因为如果使用原列表直接删除元素,会导致列表中后续元素索引的改变,这个会在以后的文章中专门介绍一下。
该方法将使用for循环遍历列表,除此之外,这里还涉及到的几个方法和函数,如下:
- not in:用于判断元素是否在返回列表中,以判断是否是重复的元素;
- append():用于向返回列表添加元素;
Python列表去重且不改变元素顺序的函数设计
def deduplication(listarg):
returnList = []
for i in listarg:
if i not in returnList:
returnList.append(i)
return returnList
# 测试该函数
list1 = [1,2,2,3,5,3,6,5,8]
returnList = deduplication(list1)
print(returnList)
来源:笨鸟工具导航 https://www.x1y1z1.com/
原文:Python列表去重且不改变元素顺序的函数代码设计 https://www.x1y1z1.com/python/pylistquchong.html
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)