欢迎访问宙启技术站
智能推送

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中三种常用的列表去重方法。具体使用哪种方法,取决于数据特性和个人喜好。在实际应用中,需要根据实际情况选择最适合的方法。