随机失败的for循环

时间:2018-07-02 14:22:25

标签: python

我正在尝试学习一些python,并在结合了for循环的随机函数方面遇到了一些麻烦。要运行的完整代码:

global_n = 3
import random
class InputNeuron:

    connections = list(range(global_n))
    connection_state = list(range(global_n))

    def __init__(self, n):
        self.n = n

my_inputs = list(range(global_n))

for i in range(0,global_n):
    my_inputs[i] = InputNeuron(global_n)

for i in range(0,3):
    for j in range(0,3):
        my_inputs[i].connections[j] = random.uniform(-1.0,1.0)
        my_inputs[i].connection_state[j] = random.uniform(-1.0,1.0)

for i in range(0, global_n):
    for j in range (0,global_n):
        print("Neuron", i, "connection", j, "is", my_inputs[i].connections[j], "and", my_inputs[i].connection_state[j])

我意识到这段代码有很多缺陷,但是我似乎无法理解的是为什么我的随机函数不能正常工作。具体来说,从运行此命令的输出中可以看出,每个“神经元”对于相应的“连接” 0、1和2具有相同的输出。据我所知,这部分代码:

for i in range(0,3):
    for j in range(0,3):
        my_inputs[i].connections[j] = random.uniform(-1.0,1.0)
        my_inputs[i].connection_state[j] = random.uniform(-1.0,1.0)

应该为这些值中的每一个分配随机值,以使神经元0(连接0)和神经元1(连接0)具有不同的值。

我可能事先忽略了一些明显的道歉措施,但是在尝试了几个小时来解决这个问题之后,我非常想放弃尝试找出问题所在。

0 个答案:

没有答案