Python中如何实现列表去重的方法及代码
发布时间:2023-06-12 17:49:01
在Python中,列表去重的方法有很多种,以下将介绍常用的三种方法,并提供相应的代码实现。
1. 使用set方法去重
Python中的set是一种无序的、不重复的数据结构,它可以帮助我们快速实现去重。我们可以将原列表转换成set,然后再将set转回列表即可实现去重。
代码实现:
# 定义一个含有重复元素的列表 lst = [1,2,3,3,4,4,5,6,6,7,8,8] # 将列表转换为set lst_set = set(lst) # 再将set转换为列表 lst_new = list(lst_set) # 打印去重后的结果 print(lst_new)
输出结果:
[1, 2, 3, 4, 5, 6, 7, 8]
2. 使用循环去重
我们可以使用循环遍历原列表,将不重复的元素添加到新列表中,从而实现去重。
代码实现:
# 定义一个含重复元素的列表
lst = [1,2,3,3,4,4,5,6,6,7,8,8]
# 新建一个空列表
lst_new = []
# 遍历原列表
for i in lst:
# 判断i是否已经在新列表中,如果不在则添加到新列表中
if i not in lst_new:
lst_new.append(i)
# 打印去重后的结果
print(lst_new)
输出结果:
[1, 2, 3, 4, 5, 6, 7, 8]
3. 使用filter函数去重
Python中的filter函数可以对序列中的元素进行过滤,并返回一个迭代器。我们可以使用filter函数将原列表中的元素和一个空集合比对,将不重复的元素顺次添加到新列表中。
代码实现:
# 定义一个含重复元素的列表 lst = [1,2,3,3,4,4,5,6,6,7,8,8] # 定义一个空集合 st = set() # 将不重复的元素添加到空集合中 lst_new = list(filter(lambda x: not (x in st or st.add(x)), lst)) # 打印去重后的结果 print(lst_new)
输出结果:
[1, 2, 3, 4, 5, 6, 7, 8]
总结:以上介绍了Python中三种常用的列表去重方法。具体使用哪种方法,取决于数据特性和个人喜好。在实际应用中,需要根据实际情况选择最适合的方法。
