如何在Python中从列表中删除重复项?

如何在Python中从列表中删除重复项?

要从Python列表中删除重复项,可以使用本文中讨论的各种方法。

使用字典从列表中删除重复项

例子

在此示例中,我们将使用OrderedDict从列表中删除重复项−

from collections import OrderedDict

# 创建具有重复项的列表
mylist = ["Jacob", "Harry", "Mark", "Anthony", "Harry", "Anthony"]

# 显示列表
print("List = ",mylist)

# 使用字典从列表中删除重复项
resList = OrderedDict.fromkeys(mylist)

# 显示删除重复项后的列表
print("Updated List = ",list(resList))
Bash

输出

List =  ['Jacob', 'Harry', 'Mark', 'Anthony', 'Harry', 'Anthony']
Updated List =  ['Jacob', 'Harry', 'Mark', 'Anthony']
Bash

使用列表推导式从列表中删除重复项

例子

在此示例中,我们将使用列表推导式从列表中删除重复项 −

# 创建具有重复项的列表
mylist = ["Jacob", "Harry", "Mark", "Anthony", "Harry", "Anthony"]

# 显示列表
print("List = ",mylist)

# 使用列表推导式从列表中删除重复项
resList = []
[resList.append(n) for n in mylist if n not in resList]
print("Updated List = ",resList)
Bash

输出

List =  ['Jacob', 'Harry', 'Mark', 'Anthony', 'Harry', 'Anthony']
Updated List =  ['Jacob', 'Harry', 'Mark', 'Anthony']
Bash

使用Set从列表中删除重复项

例子

在此示例中,我们将使用set()方法从列表中删除重复项−

# 创建具有重复项的列表
mylist = ["Jacob", "Harry", "Mark", "Anthony", "Harry", "Anthony"]

# 显示列表
print("List = ",mylist)

# 使用Set从列表中删除重复项
resList = set(mylist)
print("Updated List = ",list(resList))
Bash

输出

List =  ['Jacob', 'Harry', 'Mark', 'Anthony', 'Harry', 'Anthony']
Updated List =  ['Anthony', 'Mark', 'Jacob', 'Harry']
Bash

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册