当前位置:   article > 正文

遍历set、tuple、list哪个速度最快呢?_遍历set和遍历list哪个快

遍历set和遍历list哪个快

一、实验:

lt = range(10000)
te = tuple(lt)
st = set(lt)
  • 1
  • 2
  • 3

1、遍历list:

%%timeit
for i in lt:
    a = i
    
结果:399 µs ± 11.1 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each)
  • 1
  • 2
  • 3
  • 4
  • 5

2、遍历tuple:

%%timeit
for i in te:
    a = i
结果:231 µs ± 6.34 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each)
  • 1
  • 2
  • 3
  • 4

3、遍历set:

%%timeit
for i in st:
    a = i
 结果:274 µs ± 7.47 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each)
  • 1
  • 2
  • 3
  • 4

4、遍历数量从10000–>100000

在这里插入图片描述

5、遍历数量等于500

在这里插入图片描述

6、遍历数量等于100

在这里插入图片描述

二、结论:

遍历数量较大(500)的情况下:
速度:元组(tuple) > 集合(set) > 列表(list)

遍历数量较小(100)的情况下:
速度:元组(tuple) > 列表(list) > 集合(set)

三、本质原因:

在这里插入图片描述
tuple是不可改变的,不仅遍历速度更快、而且内存更小

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号