在 Python 中向字典添加键或向列表追加值更快吗?

Mat*_*ake 6 python performance cpu-speed

我有一个应用程序,我需要构建列表或字典,速度很重要。通常我只会声明一个适当长度的零列表并一次分配一个值,但我需要能够检查长度并使其仍然有意义。

将键值对添加到字典或将值附加到列表会更快吗?列表和字典的长度通常很小(小于 100),但这并不总是正确的,在最坏的情况下可能会更大。

如果这两个操作都太慢,我也可以用一个变量来跟踪我在列表中的位置。

sau*_*aid 4

最好的方法是使用time()来检查你的执行时间。

在下面的示例中 dict 稍微快一些。

from time import time

st_time = time()
b = dict()
for i in range(1, 10000000):
    b[i] = i

print (time() - st_time)

st_time = time()
a = []
for i in range(1, 10000000):
    a.append(i)

print (time() - st_time)

1.45600008965
1.52499985695
Run Code Online (Sandbox Code Playgroud)