0

我想在 python 中生成 0 到 380 万之间的随机数,但是生成这样的数字需要 1 秒,那么有什么好的方法可以更快地生成它吗?

from random import randint

randomIndex = randint(1, 3800000)
print randomIndex

这是 1 秒,不是每次,但有时我想优化它,有什么解决方案吗?

还有一些好的算法?

4

1 回答 1

0

如果你想加快你的代码,你可以尝试使用numpy包。

在我的系统上,随机给我:

$ python -mtimeit "from random import randint" "randint(1, 3800000)"
100000 loops, best of 3: 9.14 usec per loop

和麻木:

$ python -mtimeit "from numpy import random" "random.randint(1, 3800000)"
100000 loops, best of 3: 3.6 usec per loop

加速约 2.5 倍。

于 2012-11-23T10:59:21.157 回答