分布在-2和2之间且分布均匀的10个随机点的列表

时间:2019-03-20 23:27:18

标签: python random integer sample uniform

如何列出一个介于2和2之间且分布均匀的10个随机点? Python不断告诉我范围是负数还是太小

这是我到目前为止所拥有的:

import random
randint = random.uniform((1, 10),10)
print (randint)

5 个答案:

答案 0 :(得分:1)

random.uniform仅接受2个参数:下限和上限。因此,您需要调用10次:

[random.uniform(-2, 2) for _ in range(10)]

您也可以使用Numpy的版本。您可以在此处指定元素数:

np.random.uniform(-2, 2, 10)

答案 1 :(得分:0)

random.uniform具有两个参数,最小值和最大值

因此,您可以使用列表推导来获取10个随机数:

[random.uniform(-2, 2) for _ in range(10)]

这是示例输出:

[-1.372898354215351, 0.7685608600440506, -0.6975671872462357, -0.3631270499386905, -0.36208667438256414, 0.2822971553695144, 1.427192211459123, -0.9077597437164586, -0.8081649192178384, -1.6619848742793604]

答案 2 :(得分:0)

如果我理解正确,这就是您想要的。

l = []

for _ in range(10):
    l.append(random.uniform(-2, 2))

print(l)

[1.6348754396814087,
 1.8481047445800565,
 -0.125676526622843,
 -0.7042785180355264,
 1.2117300078323434,
 1.2910590071566834,
 -1.939559252995089,
 1.458643196526031,
 1.83268811338445,
 0.03584910568687105]

答案 3 :(得分:0)

我认为您正在尝试:

import random
my_random_numbers = [] # initialize list
for i in range(10): # you need 10 numbers
    my_random_num = random.uniform(-2, 2) # they should be between -2, 2
    print(my_random_num) # make sure numbers meet satisfaction
    my_random_numbers.append(my_random_num) # add to our list

输出:

1.6876915611870968
-0.8178893369346687
0.3262903557811643
0.6888991431631117
-1.9753672418552077
0.463925233718546
-0.44685838294827285
-1.1500656906098317
-0.8825768728082863
-1.0350040728799694

答案 4 :(得分:0)

执行以下操作:

np.random.uniform(-2, 2, 10)