📜  从列表python中删除重复项(1)

📅  最后修改于: 2023-12-03 15:21:55.973000             🧑  作者: Mango

从列表中删除重复项

在Python中,可以使用多种方法删除列表中的重复项。下面我们将逐一介绍这些方法。

方法一:使用set

将列表转换为集合(set),然后再将集合转换回列表。由于集合中没有重复项,因此重复项将被删除。

my_list = [1, 2, 3, 4, 3, 2, 1]
my_list = list(set(my_list))
print(my_list)

输出结果:[1, 2, 3, 4]

方法二:使用循环

使用循环遍历列表,将每个元素添加到另一个列表中,并检查该列表中是否已存在该元素。

my_list = [1, 2, 3, 4, 3, 2, 1]
new_list = []
for item in my_list:
    if item not in new_list:
        new_list.append(item)
print(new_list)

输出结果:[1, 2, 3, 4]

方法三:使用列表推导式

使用列表推导式,遍历列表时只添加列表中尚未存在的元素。

my_list = [1, 2, 3, 4, 3, 2, 1]
new_list = []
[new_list.append(item) for item in my_list if item not in new_list]
print(new_list)

输出结果:[1, 2, 3, 4]

方法四:使用collections

使用collections中的Counter类去除重复项。

from collections import Counter

my_list = [1, 2, 3, 4, 3, 2, 1]
count_list = Counter(my_list)
new_list = list(count_list)
print(new_list)

输出结果:[1, 2, 3, 4]

总结

以上就是删除列表中重复项的几种方法。其中,使用set是最简单、最直接的方法;使用循环和列表推导式则需要遍历整个列表,比较费时;而使用collections则需要额外引入Counter类,但提供了更多的操作方法。根据实际情况选择不同的删除方法即可。