我是python新手,但对OO语言相当熟悉,我正在努力解决一个编译错误,这个错误很明显,但我不知道如何修复。你知道吗
这是我的课
class Neuron():
def __init__(self):
self.__output = 0
self.__inputNeurons = []
def initInputNeurons(neuronArray, initialWeight=0):
for neuron in neuronArray:
__inputNeurons.append((neuron, initialWeight))
def activateFromInput(value):
output = value;
def activateFromNeurons(activationFunction, threshold=1):
sumWeightedInputs = 0
for connection in __inputNeurons:
sumWeightedInputs += connection[0].output * connection[1]
output = activationFunction(sumWeightedInputs, threshold)
它相当简单,有一个init函数和几个激活选项。在读入训练数据后,我用下面的代码初始化神经网络。你知道吗
inputNeurons = []
for value in trainingCharacterVecs[0]:
inputNeurons.append(Neuron())
outputNeurons = []
for value in range(7):
print(value);
neuron = Neuron()
Neuron.initInputNeurons(inputNeurons, value)
outputNeurons.append(neuron)
我的错误发生在初始化outputNeuron数组时,特别是在运行时
Neuron.initInputNeurons(inputNeurons, value)
我得到以下错误
Traceback (most recent call last):
File "./simpleNet.py", line 88, in <module>
Neuron.initInputNeurons(inputNeurons, value)
File "./simpleNet.py", line 62, in initInputNeurons
__inputNeurons.append((neuron, initialWeight))
NameError: name '_Neuron__inputNeurons' is not defined
错误告诉我输入神经元不存在。当我将\u inputNeurons在\u init\uuuu函数外定义为静态变量时,也是这样。你知道吗
我应该如何在python中定义和访问类变量?你知道吗
使用Python,您需要为每个引用显式地引用self。这意味着它是您的第一个参数,它需要通过点表示法引用。你知道吗
试试这个:
相关问题 更多 >
编程相关推荐