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

📅  最后修改于: 2023-12-03 14:45:53.455000             🧑  作者: Mango

Python - 从列表中删除重复项

在Python中,可以使用一些方法来从列表中删除重复项。这些方法很简单,但对于新手来说可能会有些困惑。在本文中,将介绍几种方法来删除Python列表中的重复项。

方法一:使用set()

使用Python内置的set()函数可以很容易地从列表中删除重复项。因为set()函数只会返回列表中的唯一值,所以只需将列表传递给set()函数,再将其转回列表,即可得到一个没有重复项的列表。

original_list = [1, 1, 2, 2, 3, 4, 4, 5]
new_list = list(set(original_list))
print(new_list)

输出结果:

[1, 2, 3, 4, 5]
方法二:使用列表推导式

另一种方法是使用列表推导式。这种方法比较高效,也更容易理解。可以使用if语句判断列表中的元素是否已经存在于另一个列表中。如果元素不存在于新列表中,则将其添加。示例如下:

original_list = [1, 1, 2, 2, 3, 4, 4, 5]
new_list = []
[new_list.append(x) for x in original_list if x not in new_list]
print(new_list)

输出结果:

[1, 2, 3, 4, 5]
方法三:使用字典

最后一种方法是使用字典。因为字典的键是唯一的,所以可以使用原始列表中的元素作为字典的键。这将自动删除所有重复项。示例如下:

original_list = [1, 1, 2, 2, 3, 4, 4, 5]
new_dict = {}
[new_dict.setdefault(x, None) for x in original_list]
new_list = list(new_dict.keys())
print(new_list)

输出结果:

[1, 2, 3, 4, 5]

以上就是几种Python从列表中删除重复项的方法,大家可以根据自己的需求选择适合自己的方法来解决问题。