Python列表常用方法五:元素如何去掉重复项

引言

列表作为一个容器可以存储不同类型的数据元素,而且可以存储重复元素。在项目应用中,提取列表中唯一元素删除重复项是常见操作,实现方法也多种多样。列举几种常用方法方便遗忘时回忆。

目录

一、set()去重复

二、列表推导式去重复

三、numpy.unque()去重复

四、字典的键去重复

五、列表常用方法系列文章链接


一、set()去重复

使用集合set数据结构可以去重复,但会造成数据无序性,改变原始列表的有序性。

示例代码

import time

def remove_duplicate_1(data_list):
    start_time = time.time()

    #利用集合set去重复
    new_list = list(set(data_list))
    end_time = time.time()
    print("使用set()集合去重复时间{:.3f}".format(end_time-start_time))
    return new_list

duplicate_cnt = int(1e8)    #重复次数
data = list(range(6))*duplicate_cnt
new_list = remove_duplicate_1(data)
print(new_list)

#实验结果
使用set()集合去重复时间4.511
[0, 1, 2, 3, 4, 5]

二、列表推导式去重复

如果像保持列表去重复后数据的有效顺序可以使用列表推导式与if语句的组合。

示例代码

import time

def remove_duplicate_2(data_list):
    start_time = time.time()
    new_list = []
   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值