0
点赞
收藏
分享

微信扫一扫

python 遍历 两列表比较A列表中是否存在于B列表的两种方法的 性能测试

Mezereon 2022-03-11 阅读 45

在遍历对比中,我曾使用.index函数去对列表元素进行比较,在index函数中,描述为

这意味着A元素并不是完全等同于B元素,而是B元素中包含了A元素,在这种情况下,才需要使用到index函数,盲目使用函数或许浪费大部分性能,并且index抛出错误,使用try将再次损耗性能

所以 我做了以下测试,去验证性能

首先使用time模块并定义两个列表用于比较

由于单独运行的结果非常小,所以采用同样的循环增加次数

完整验证代码如下

#列表查找检测
import time
list=[1,2,3,4,5,6,7]
list1=[1,2,3,4,5,6,7,8,9,10,11,12,13,14]

start = time.time()

k=0
while k < 10000:
    k+=1
    for i in list1:
        for n in list:
            if i == n :
                object_listnnnn = i
            else:
                object_listnnnn = i



end = time.time()
print((end - start))
start = time.time()

k=0
while k < 10000:
    k+=1
    for i in list1:
        for n in list:
            try:
                object_listnnnn = list.index(i)
                object_listnnnn = i

            except:
                object_listnnnn = i


end = time.time()
print((end - start))

 

测试数据如下

12345平均
0.9469578270.9059686660.9589548110.9690582750.952864170.94676075
2.5348708632.5891089442.5838816172.4691779612.5260672572.540621328

明显采用第一种方法速度将是大于一倍

举报

相关推荐

0 条评论