Python判断值是否在list或set中的性能对比分析 Python判断值是否在list或set中的性能对比分析
mo_guang 人气:0想了解Python判断值是否在list或set中的性能对比分析的相关内容吗,mo_guang在本文为您仔细讲解Python判断值是否在list或set中的性能对比分析的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:Python,判断,list,set,性能对比分析,下面大家一起来学习吧。
本文实例对比分析了Python判断值是否在list或set中的执行性能。分享给大家供大家参考,具体如下:
判断值是否在set集合中的速度明显要比list快的多, 因为查找set用到了hash,时间在O(1)级别。
假设listA有100w个元素,setA=set(listA)即setA为listA转换之后的集合。
以下做个简单的对比:
for i in xrange(0, 5000000): if i in listA: pass for i in xrange(0, 5000000): if i in setA: pass
第一个循环用了16min,第二个循环用了52s。 由此可见,在set中判断是否存在某值的效率要高的多。
况且,从list转为set,并不会花什么时间。
希望本文所述对大家Python程序设计有所帮助。
加载全部内容