如何在Python中创建随机数和的列表?
我可以写一个for循环来得到一系列随机数的和吗?我是新手。我不知道如何在Python中创建随机数和的列表?,python,random,Python,Random,我可以写一个for循环来得到一系列随机数的和吗?我是新手。我不知道 import random sum(random.random() for i in range(how_many_random_numbers_do_you_want)) 然而,我不明白这有什么意义。10个随机数之和并不比单个随机数“更随机”。哦,看在上帝的份上。这里的其他答案都太过冷静了 如果您对此不熟悉: from random import random total = 0 for i in range(10):
import random
sum(random.random() for i in range(how_many_random_numbers_do_you_want))
然而,我不明白这有什么意义。10个随机数之和并不比单个随机数“更随机”。哦,看在上帝的份上。这里的其他答案都太过冷静了 如果您对此不熟悉:
from random import random
total = 0
for i in range(10):
total = total + random()
print total
[编辑:将
sum
更改为total
]如果将更多随机数加在一起,则数字不会更随机。
将随机数与要添加的随机值的数目相乘,得到相同的结果
from random import random
random() * 5
通过使用numpy,您可以快速生成此类随机数:
import numpy as np
a = np.sum(random.rand(100,10000),axis=0)
或
该程序将创建10000个随机数,每个数是100个均匀分布随机数的总和
你可以得到随机数的均值和方差:
In [69]: np.mean(a)
Out[69]: 49.9569087164707
In [70]: np.var(a)
Out[70]: 8.2763465318604865
一个随机数之和?:)|另外,您能告诉我们为什么要这样做吗?您知道如何生成随机数,您知道如何添加数字,您知道如何编写for循环吗?如果你能做到每一个,那么做起来应该很简单。在大多数实际应用中,将10个随机数相加等于取一个随机数乘以10。@wallacolo:这在很大程度上取决于数字的分布。10个均匀分布的随机数之和不是均匀分布的。事实上,到目前为止,它接近正态分布。另一方面,一个均匀分布的随机数乘以10仍然是均匀分布的。什么样的随机数?这是干什么用的?你有什么问题?它是“较少”随机的(不再是均匀分布的)。这不是初学者想要的答案。认真地初学者不需要一行程序。即使对初学者来说,重新绑定内置名
sum
也是个坏主意。
b = np.sum(random.rand(10000) for i in xrange(100)) # this one will use less memory
In [69]: np.mean(a)
Out[69]: 49.9569087164707
In [70]: np.var(a)
Out[70]: 8.2763465318604865