對python中兩種列表元素去重函數(shù)性能的比較方法
測試函數(shù):
第一種:list的set函數(shù)
第二種:{}.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
測試結(jié)果:

我們可以看出,當(dāng)測試列表長度很短時,使用第二種方法較快,在1000時,第一種性能已經(jīng)超過第二種了,列表越長,第一種方法優(yōu)勢越明顯。當(dāng)頻繁的對短列表進(jìn)行去重時(長度<=1000)建議使用第二種方法,當(dāng)長度超過1000時建議使用第二種方法。
但歸根結(jié)底,建議不要用python進(jìn)行大規(guī)模的數(shù)據(jù)計算,建議使用matlab、或者python的matlab庫,畢竟專業(yè)的還是厲害。
以上這篇對python中兩種列表元素去重函數(shù)性能的比較方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
打印出python 當(dāng)前全局變量和入口參數(shù)的所有屬性
打印出python 當(dāng)前全局變量和入口參數(shù)的所有屬性的實(shí)現(xiàn)代碼。2009-07-07
深入理解Python內(nèi)置函數(shù)map filter reduce及與列表推導(dǎo)式對比
這篇文章主要為大家介紹了Python內(nèi)置函數(shù)map filter reduce及與列表推導(dǎo)式對比方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-06-06
Python實(shí)現(xiàn)猜拳與猜數(shù)字游戲的方法詳解
本文將為大家介紹兩個用Python語言實(shí)現(xiàn)的小案例:猜拳游戲與數(shù)字猜猜猜小游戲,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下2022-04-04
Python實(shí)現(xiàn)代碼統(tǒng)計工具
這篇文章主要為大家詳細(xì)介紹了Python實(shí)現(xiàn)代碼統(tǒng)計工具,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-09-09

