对python中两种列表元素去重函数性能的比较方法


Posted in Python onJune 29, 2018

测试函数:

第一种: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

测试结果:

对python中两种列表元素去重函数性能的比较方法

我们可以看出,当测试列表长度很短时,使用第二种方法较快,在1000时,第一种性能已经超过第二种了,列表越长,第一种方法优势越明显。当频繁的对短列表进行去重时(长度<=1000)建议使用第二种方法,当长度超过1000时建议使用第二种方法。

但归根结底,建议不要用python进行大规模的数据计算,建议使用matlab、或者python的matlab库,毕竟专业的还是厉害。

以上这篇对python中两种列表元素去重函数性能的比较方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python的math模块中的常用数学函数整理
Feb 04 Python
利用python实现简单的邮件发送客户端示例
Dec 23 Python
简述Python2与Python3的不同点
Jan 21 Python
Django框架教程之正则表达式URL误区详解
Jan 28 Python
Python基于hashlib模块的文件MD5一致性加密验证示例
Feb 10 Python
Python3 获取一大段文本之间两个关键字之间的内容方法
Oct 11 Python
Python 实现子类获取父类的类成员方法
Jan 11 Python
python做接口测试的必要性
Nov 20 Python
python装饰器代替set get方法实例
Dec 19 Python
Python和Sublime整合过程图示
Dec 25 Python
Python基于class()实现面向对象原理详解
Mar 26 Python
Python使用OpenCV实现虚拟缩放效果
Feb 28 Python
Python数据持久化shelve模块用法分析
Jun 29 #Python
python 统计列表中不同元素的数量方法
Jun 29 #Python
python计算两个数的百分比方法
Jun 29 #Python
python统计字母、空格、数字等字符个数的实例
Jun 29 #Python
python中计算一个列表中连续相同的元素个数方法
Jun 29 #Python
Python使用ConfigParser模块操作配置文件的方法
Jun 29 #Python
python计算列表内各元素的个数实例
Jun 29 #Python
You might like
PHP在Web开发领域的优势
2006/10/09 PHP
PHP用户指南-cookies部分
2006/10/09 PHP
PHP中文URL编解码(urlencode()rawurlencode()
2010/07/03 PHP
鸡肋的PHP单例模式应用详解
2013/06/03 PHP
PHP图像处理之imagecreate、imagedestroy函数介绍
2014/11/19 PHP
CodeIgniter删除和设置Cookie的方法
2015/04/07 PHP
简单了解将WordPress中的工具栏移到底部的小技巧
2015/12/31 PHP
PHP爬虫之百万级别知乎用户数据爬取与分析
2016/01/22 PHP
yii2.0实现pathinfo的形式访问的配置方法
2016/04/06 PHP
PHP解析url并得到url参数方法总结
2018/10/11 PHP
如何实现JS函数的重载
2006/09/22 Javascript
基于jquery的使ListNav兼容中文首字拼音排序的实现代码
2011/07/10 Javascript
js jquery验证银行卡号信息正则学习
2013/01/21 Javascript
js的正则test,match,exec详细解析
2014/01/29 Javascript
jquery 淡入淡出效果的简单实现
2014/02/07 Javascript
基于NodeJS的前后端分离的思考与实践(三)轻量级的接口配置建模框架
2014/09/26 NodeJs
浅谈下拉菜单中的Option对象
2015/05/10 Javascript
javascript实现列表滚动的方法
2015/07/30 Javascript
jQuery实现可编辑的表格实例讲解(2)
2015/09/17 Javascript
深入对Vue.js $watch方法的理解
2017/03/20 Javascript
如何编写jquery插件
2017/03/29 jQuery
vue动态路由配置及路由传参的方式
2018/05/23 Javascript
JS错误处理与调试操作实例分析
2020/04/13 Javascript
Python实现简单状态框架的方法
2015/03/19 Python
python抓取最新博客内容并生成Rss
2015/05/17 Python
Python爬虫爬验证码实现功能详解
2016/04/14 Python
python实现按任意键继续执行程序
2016/12/30 Python
Python 3实战爬虫之爬取京东图书的图片详解
2017/10/09 Python
对python中的for循环和range内置函数详解
2018/04/17 Python
python speech模块的使用方法
2020/09/09 Python
纽约和芝加哥当天送花:Ode à la Rose
2019/07/05 全球购物
移交协议书
2014/08/19 职场文书
导游词之西江千户苗寨
2019/12/24 职场文书
使用Navicat Premium工具将oracle数据库迁移到MySQL
2021/05/27 Oracle
pytorch通过训练结果的复现设置随机种子
2021/06/01 Python
table设置超出部分隐藏,鼠标移上去显示全部内容的方法
2022/12/24 HTML / CSS