python删除重复项并排序_python论文参考文献5篇

python删除重复项并排序_python论文参考文献5篇在 Python 中 删除列表中的重复项可以通过以下几种方法实现 1 使用字典 dict fromkeys pythonmylist 1 2 2 3 3 3 4 4 4 4 mylist list dict fromkeys mylist print mylist 输出 1 2 3 4 2 使用排序和列表推导式

在Python中,删除列表中的重复项可以通过以下几种方法实现:

1. 使用字典(`dict.fromkeys`):

python

mylist = [1, 2, 2, 3, 3, 3, 4, 4, 4, 4]

mylist = list(dict.fromkeys(mylist))

print(mylist) 输出:[1, 2, 3, 4]

2. 使用排序和列表推导式:

python

listA = ['python', '语言', '是', '一门', '动态', '语言']

listA.sort()

resultList = [x for i, x in enumerate(listA) if x not in listA[:i]]

print(resultList) 输出:['python', '语言', '是', '一门', '动态', '语言']

3. 使用`OrderedDict`(有序字典):

python

from collections import OrderedDict

mylist = ['Jacob', 'Harry', 'Mark', 'Anthony', 'Harry', 'Anthony']

resList = list(OrderedDict.fromkeys(mylist))

print(resList) 输出:['Jacob', 'Harry', 'Mark', 'Anthony']

4. 使用列表推导式和`not in`操作符:

python

mylist = [10, 1, 2, 20, 10, 3, 2, 1, 15, 20, 44, 56, 3, 2, 1]

list3 = [x for i, x in enumerate(mylist) if x not in mylist[:i]]

print(list3) 输出:[10, 1, 2, 3, 15, 20, 44, 56]

5. 使用`set`构造函数:

python

mylist = [10, 1, 2, 20, 10, 3, 2, 1, 15, 20, 44, 56, 3, 2, 1]

list3 = list(set(mylist))

print(list3) 输出:[1, 2, 3, 10, 15, 20, 44, 56]

6. 使用`sort`函数和`index`方法:

python

mylist = [10, 1, 2, 20, 10, 3, 2, 1, 15, 20, 44, 56, 3, 2, 1]

list3 = list(set(mylist))

list3.sort(key=mylist.index)

print(list3) 输出:[1, 2, 3, 10, 15, 20, 44, 56]

7. 循环遍历并创建新列表:

python

mylist = [10, 1, 2, 20, 10, 3, 2, 1, 15, 20, 44, 56, 3, 2, 1]

list5 = []

for el in mylist:

if el not in list5:

list5.append(el)

print(list5) 输出:[10, 1, 2, 3, 15, 20, 44, 56]

以上方法各有优缺点,选择合适的方法取决于具体的需求和列表的特性。需要注意的是,使用`set`方法去重会丢失原始列表的顺序,而使用`OrderedDict`或列表推导式结合`not in`可以保留顺序。

编程小号
上一篇 2026-05-17 14:42
下一篇 2026-05-17 14:36

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://sigusoft.com/bj/40079.html