为什么随机给出重复的值

时间:2019-12-11 23:49:22

标签: python random

我是python的初学者,所以很抱歉,如果这个问题不好,但是我试图编写一个简单的脚本来计算距原点的一些点的距离,但是当我去随机测试时数据,我得到一个奇怪的结果:无论我做什么,x和y值都从random()获得了相同的值。这是我可以解决的最小示例:

from random import random

x = y = [None]*5
for i in range(5):
    x[i] = random()*10
    y[i] = random()*10
    print("x: ", x[i])
    print("y: ", y[i])

dist = []
for d in range(len(x)):
    dist.append((x[d]**2 + y[d]**2)**0.5)
    print("d: ", dist[d])

我希望可以为x打印5个随机值,为y打印5个不同的随机值,然后从每对到原点的距离打印,但是相反,它为每个x和y打印相同的值,就像这样

x:  4.0208682354265655
y:  4.0208682354265655
x:  3.923508926640271
y:  3.923508926640271
x:  6.854641339548273
y:  6.854641339548273
x:  0.5508569083735182
y:  0.5508569083735182
x:  0.312088919076029
y:  0.312088919076029
d:  5.686366391055424
d:  5.548679536146577
d:  9.693926747592448
d:  0.7790293107487427
d:  0.44136038202367955

我认为这可能是随机模块,因为我之前听说过不使用它,而是使用numpy的模块,但是两者都发生了。这是怎么回事?

0 个答案:

没有答案