我正在编写一个编程项目的过程,该项目涉及Python中一些非常广泛的蒙特卡罗模拟,因此产生了大量的随机数.几乎所有这些(如果不是全部的话)都可以通过Python的内置随机模块生成.
我是一个编码新手,并且不熟悉高效和低效的做事方式.生成say,所有随机数作为列表,然后遍历该列表,或者每次调用一个函数时生成一个新的随机数,这将是一个非常大的循环?
或者其他一些,无疑是更聪明的方法?
每次生成一个随机数。由于循环的内部工作只关心单个随机数,因此在循环内生成并使用它。
例子:
# do this:
import random
for x in xrange(SOMEVERYLARGENUMBER):
    n = random.randint(1,1000) # whatever your range of random numbers is
    # Do stuff with n
# don't do this:
import random
# This list comprehension generates random numbers in a list
numbers = [random.randint(1,1000) for x in xrange(SOMEVERYLARGENUMBER)]
for n in numbers:
    # Do stuff with n
显然,实际上,这并不重要,除非您要处理数十亿次迭代,但如果您一次只使用一个数字,为什么还要费心生成所有这些数字呢?
| 归档时间: | 
 | 
| 查看次数: | 9051 次 | 
| 最近记录: |