对python中两种列表元素去重函数性能的比较方法
作者:HelloHaibo 发布时间:2021-04-01 13:37:59
标签:python,列表,去重,函数
测试函数:
第一种:list的set函数
第二种:{}.fromkeys().keys()
测试代码:
#!/usr/bin/python
#-*- coding:utf-8 -*-
import time
import random
l1 = []
leng = 10L
for i in range(0,leng):
temp = random.randint(1,10)
l1.append(temp)
print '测试列表长度为:',leng
#first set
last = time.clock()
l2 = list(set(l1))
print l2
now = time.clock()
print '第一种:',now-last
#second
last = time.clock()
l2 = {}.fromkeys(l1).keys()
print l2
now = time.clock()
print '第二种:',now-last
测试结果:
我们可以看出,当测试列表长度很短时,使用第二种方法较快,在1000时,第一种性能已经超过第二种了,列表越长,第一种方法优势越明显。当频繁的对短列表进行去重时(长度<=1000)建议使用第二种方法,当长度超过1000时建议使用第二种方法。
但归根结底,建议不要用python进行大规模的数据计算,建议使用matlab、或者python的matlab库,毕竟专业的还是厉害。
来源:https://blog.csdn.net/HelloHaibo/article/details/77606310


猜你喜欢
- 本文实例讲述了Python可变和不可变、类的私有属性。分享给大家供大家参考,具体如下:可变和不可变items = []print(id(li
- 上一篇文章 跨表更新,看到自己写的SQL像个憨憨写了关于跨表个更新的内容。一年过的很快,文中后来的两位员工 馮大 和 馮二 也要面对无情的
- 如下所示:from win32com.client import constantsimport osimport win32com.cli
- 为什么训练误差比测试误差高很多?一个Keras的模型有两个模式:训练模式和测试模式。一些正则机制,如Dropout,L1/L2正则项在测试模
- 1.sp_helpsort SELECT SERVERPROPERTY ('Collation') 查看你的排序规则. 不过
- 前言replace into平时在开发中很少用到,这次是因为在做一个生成分布式ID的开源项目,调研雅虎推出的一个基于数据库生成唯一id生成方
- 一、 QingScan介绍QingScan是一个安全工具整合系统,解决你平时使用各种工具一个个打 开填写扫描目标的麻烦过程;QingScan
- ie的javascript失效了,不是设置的问题那么就可能是以下几点问题了~安装KAV可能会破坏系统的javascript关联,失javas
- vue1.0中 vm.$dispatch 和 vm.$broadcast 被弃用,改用$emit,$onvm.$on( event, cal
- 使用定时功能对于我们想要快速获取某个数据来说,是一个非常好的方法。这样我们就不用苦苦守在电脑屏幕前,只为蹲到某个想要的东西。在之前我们已经讲
- 由于需要从某个网页上下载一些PDF文件,但是需要下载的PDF文件有几百个,所以不可能用人工点击来下载。正好Python有相关的模块,所以写了
- 首先初始化页面$(function(){ $('#archives-table').bootstrapTable
- 中文编码问题一直是Python程序设计中很头痛的问题,本文对此较为详细的进行了总结归纳。具体如下: 当字符串是:'\u4e
- 1、Node.js的单线程 非阻塞 I/O 事件驱动在 Java、PHP 或者.net 等
- 在向大家详细介绍Linux mysql之前,首先让大家了解下Linux mysql,然后全面介绍Linux mysql,希望对大家有用。1.
- 把程序放到一个文件中,然后包含再call就可以了。(JMAIL4.3)<%'警告函数sub w_msg(messag
- 前言:又到每日分享Python小技巧的时光了,今天给大家分享的是Python接口常用封装函数。相信对于封装,大家都不陌生吧,今天就用四个小案
- 本文实例讲述了JS笛卡尔积算法与多重数组笛卡尔积实现方法。分享给大家供大家参考,具体如下:js 笛卡尔积算法的实现代码,据对象或者数组生成笛
- 如下所示:hist = model.fit(x,y, epochs=epoch_num, batch_size=32,callbacks=e
- 前言深度神经网络是一种目前被广泛使用的工具,可以用于图像识别、分类,物体检测,机器翻译等等。深度学习(DeepLearning)是一种学习神