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

yipeiwu_com6年前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库,毕竟专业的还是厉害。

以上这篇对python中两种列表元素去重函数性能的比较方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python随机在一张图像上截取任意大小图片的方法

如下所示: ''' 机器学习中随机产生负样本的 ''' import cv2 import random #读取图片 img=cv2.imread('1.png') #h...

Python中除法使用的注意事项

本文实例讲解了Python中除法使用的注意事项,是非常重要的技巧,对于Python程序设计来说有很好的借鉴价值。具体分析如下: 现来看如下示例: def avg(first, *re...

Python标准库之itertools库的使用方法

前言 因为最近事情不是很多,想写一些技术文章分享给大家,同时也对自己一段时间来碎片化接受的知识进行一下梳理,所谓写清楚才能说清楚,说清楚才能想清楚,就是这个道理了。 很多人都致力于把P...

深入浅析Python 中的sklearn模型选择

1.主要功能如下: 1.classification分类 2.Regression回归 3.Clustering聚类 4.Dimensionality reduction降维 5.Mo...

python3利用Socket实现通信的方法示例

python3利用Socket实现通信的方法示例

参考于: python cs架构实现简单文件传输 原文中程序运行有误,在此做修改与解释,如下: 功能说明: 共2个py文件分别为server和client端,采用socket进行通信。...