我想在python中生成0到380万之间的随机数,但生成这样的数字需要1秒,那么有没有什么好方法可以更快的方式生成它?
from random import randint
randomIndex = randint(1, 3800000)
print randomIndex
这是1秒,而不是每次,但有时我想优化它,所以有任何解决方案吗?
还有一些不错的算法吗?
答案 0 :(得分:0)
如果您想加速代码,可以尝试使用numpy
包。
在我的系统上,随机给我:
$ python -mtimeit "from random import randint" "randint(1, 3800000)"
100000 loops, best of 3: 9.14 usec per loop
numpy:
$ python -mtimeit "from numpy import random" "random.randint(1, 3800000)"
100000 loops, best of 3: 3.6 usec per loop
加速度大约2.5倍。