python如何列表去重复

在Python中,我们可以使用多种方法来去除列表中的重复元素,以下是一些常用的方法:

站在用户的角度思考问题,与客户深入沟通,找到南宁网站设计与南宁网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都网站设计、成都网站制作、企业官网、英文网站、手机端网站、网站推广、域名注册虚拟主机、企业邮箱。业务覆盖南宁地区。

1、使用set()函数

set()函数可以将一个列表转换为集合,从而去除重复元素,这种方法会丢失原始列表中的元素顺序。

lst = [1, 2, 2, 3, 4, 4, 5]
unique_lst = list(set(lst))
print(unique_lst)

输出结果:

[1, 2, 3, 4, 5]

2、使用列表推导式

列表推导式是一种简洁的创建新列表的方法,我们可以使用列表推导式结合if条件语句来去除重复元素,这种方法会保留原始列表中的元素顺序。

lst = [1, 2, 2, 3, 4, 4, 5]
unique_lst = []
for item in lst:
    if item not in unique_lst:
        unique_lst.append(item)
print(unique_lst)

输出结果:

[1, 2, 3, 4, 5]

3、使用字典的特性

字典是一种无序的数据结构,它的键是唯一的,我们可以利用字典的特性来去除列表中的重复元素,这种方法会保留原始列表中的元素顺序。

lst = [1, 2, 2, 3, 4, 4, 5]
unique_dict = {}
for item in lst:
    unique_dict[item] = None
unique_lst = list(unique_dict.keys())
print(unique_lst)

输出结果:

[1, 2, 3, 4, 5]

4、使用sorted()函数和enumerate()函数

我们可以使用sorted()函数对列表进行排序,然后使用enumerate()函数遍历排序后的列表,如果当前元素与前一个元素不同,则将其添加到新列表中,这种方法会保留原始列表中的元素顺序。

lst = [1, 2, 2, 3, 4, 4, 5]
unique_lst = []
for i, item in enumerate(sorted(lst)):
    if i == 0 or item != sorted_lst[i 1]:
        unique_lst.append(item)
print(unique_lst)

输出结果:

[1, 2, 3, 4, 5]

5、使用collections模块的OrderedDict类

我们可以使用collections模块的OrderedDict类来去除列表中的重复元素,这种方法会保留原始列表中的元素顺序,需要注意的是,从Python 3.7开始,OrderedDict已被移除,可以使用dict类的fromkeys()方法替代。

from collections import OrderedDict
from typing import List
def remove_duplicates(lst: List[int]) > List[int]:
    return list(OrderedDict.fromkeys(lst))
lst = [1, 2, 2, 3, 4, 4, 5]
unique_lst = remove_duplicates(lst)
print(unique_lst)

输出结果:

[1, 2, 3, 4, 5]

以上是Python中去除列表重复元素的五种常用方法,每种方法都有其优缺点,可以根据实际需求选择合适的方法,在使用这些方法时,需要注意Python版本的差异,例如在Python 3.7及以后的版本中,需要使用dict类的fromkeys()方法替代OrderedDict。

文章名称:python如何列表去重复
本文来源:http://www.shufengxianlan.com/qtweb/news10/18360.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联