您当前的位置:首页 > 计算机 > 编程开发 > Python

Python代码优化之in关键字

时间:09-07来源:作者:点击数:

如果经常需要测试一个序列中是否包含某个元素,最好使用字典或集合,尽量不使用列表。

import random

import time

x_list = list(range(10000))

x_set = set(range(10000))

x_dict = dict(zip(range(1000), range(10000)))

x = (x_list, x_set, x_dict)

#生成随机测试数字

r = random.randint(0, 9999)

#测试每种结构所用的时间

for xyz in x:

    start = time.time()

    for i in range(9999999):

        r in xyz

    print(str(type(xyz))+'time used:', time.time()-start)

运行结果如下,可以看出,对于测试是否包含某个元素的操作,列表的速度非常慢:

<class 'list'>time used: 2882.9568955898285

<class 'set'>time used: 2.398137092590332

<class 'dict'>time used: 1.9431111812591553

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门