Python判斷值是否在list或set中的性能對比分析
本文實(shí)例對比分析了Python判斷值是否在list或set中的執(zhí)行性能。分享給大家供大家參考,具體如下:
判斷值是否在set集合中的速度明顯要比list快的多, 因?yàn)椴檎襰et用到了hash,時(shí)間在O(1)級別。
假設(shè)listA有100w個(gè)元素,setA=set(listA)即setA為listA轉(zhuǎn)換之后的集合。
以下做個(gè)簡單的對比:
for i in xrange(0, 5000000): if i in listA: pass for i in xrange(0, 5000000): if i in setA: pass
第一個(gè)循環(huán)用了16min,第二個(gè)循環(huán)用了52s。 由此可見,在set中判斷是否存在某值的效率要高的多。
況且,從list轉(zhuǎn)為set,并不會花什么時(shí)間。
更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進(jìn)階經(jīng)典教程》及《Python文件與目錄操作技巧匯總》
希望本文所述對大家Python程序設(shè)計(jì)有所幫助。
相關(guān)文章
Python:合并兩個(gè)numpy矩陣的實(shí)現(xiàn)
今天小編就為大家分享一篇Python:合并兩個(gè)numpy矩陣的實(shí)現(xiàn),具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-12-12Python實(shí)現(xiàn)定時(shí)發(fā)送監(jiān)控郵件
這篇文章主要為大家講解如何用python連接郵箱,實(shí)現(xiàn)自動發(fā)送監(jiān)控郵件,文中的示例講解詳細(xì),對我們了解Python有一定的幫助,需要的可以參考一下2022-01-01Python函數(shù)式編程藝術(shù)之修飾器運(yùn)用場景探索
本文將詳細(xì)介紹Python修飾器的概念,提供詳細(xì)的示例,并介紹如何使用它們來優(yōu)化和擴(kuò)展代碼,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-11-11Python實(shí)現(xiàn)將橫表和縱表任意轉(zhuǎn)換的兩種方法
在日常做數(shù)據(jù)分析,接收到最多的表格是縱表,每個(gè)字段變量都有很長數(shù)據(jù)的長表,我們稱之為縱向數(shù)據(jù),但是,有時(shí)候,我們也會遇到橫表,對于橫向數(shù)據(jù),我們會數(shù)據(jù)轉(zhuǎn)化,將其轉(zhuǎn)化為縱向數(shù)據(jù),感興趣的同學(xué)跟著小編一起來學(xué)習(xí)吧2023-12-12Python中命令行參數(shù)argparse模塊的使用
argparse是python自帶的命令行參數(shù)解析包,可以用來方便的服務(wù)命令行參數(shù)。本文將通過示例和大家詳細(xì)講講argparse的使用,需要的可以參考一下2023-02-02Python過濾txt文件內(nèi)重復(fù)內(nèi)容的方法
今天小編就為大家分享一篇Python過濾txt文件內(nèi)重復(fù)內(nèi)容的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-10-10利用python中集合的唯一性實(shí)現(xiàn)去重
集合,用{ }表示,集合中所有元素具有唯一性。這篇文章給大家介紹利用python中集合的唯一性實(shí)現(xiàn)去重,感興趣的朋友一起看看吧2020-02-02