在python中使用类中的变量实例化类
我希望它输出数字3,但我不断得到错误:数据未定义。但我认为我在实例化类并向其传递值时定义了数据 实例化时确实定义了在python中使用类中的变量实例化类,python,class,instantiation,Python,Class,Instantiation,我希望它输出数字3,但我不断得到错误:数据未定义。但我认为我在实例化类并向其传递值时定义了数据 实例化时确实定义了数据属性,但是在实例化之前,打印行在类定义处执行。如果要打印数据,请尝试print(self.data)inside\uuuu init\uuuu 编辑:起初我没有注意到您将类声明为类神经网络(数据)。该语法意味着您正在创建一个从数据类继承的类。由于该类不存在,您将有一个错误。只需将其删除,然后改用类Neuralnetwork。您当前的系统具有从数据继承的Neuralnetwork。
数据
属性,但是在实例化之前,打印
行在类定义处执行。如果要打印数据,请尝试print(self.data)
inside\uuuu init\uuuu
编辑:起初我没有注意到您将类声明为
类神经网络(数据)
。该语法意味着您正在创建一个从数据
类继承的类。由于该类不存在,您将有一个错误。只需将其删除,然后改用类Neuralnetwork
。您当前的系统具有从数据继承的Neuralnetwork。您当前试图做的最好是使用\uuuu init\uuu
方法。你也不应该像这样在类的主体中进行打印
Python没有私有方法和函数的概念,因此可以使用点表示法访问所有内容。这样说来,在函数/方法/字段的开头添加一个。
将告诉类/库的用户,它应该被视为私有的
class Neuralnetwork(data):
def __init__(self, data):
self.data = data
print(data)
if __name__ == "__main__":
Neuralnetwork(3)
您应该声明类:
class-Neuralnetwork:
或class-Neuralnetwork(object)
,此外,print语句应该位于\uuuuu init\uuuuu
内(修复标识)。谢谢!我对python是新手,所以我还有一个愚蠢的问题。在进一步创建其他方法和函数之前,我设置print语句只是为了检查数据变量是否包含某些内容。如何访问变量数据?这就是为什么我要打印它,只是测试如何获取内容。当你实例化这个类时,给它分配一个变量:network=Neuralnetwork(3)
。然后,您可以通过network.data
访问数据。例如,print(network.data)
。谢谢你让我更有意义!谢谢,但在我继续创建更多函数和方法之前,我只是想确保数据变量包含我所期望的信息。否则如何访问该变量?
class Neuralnetwork(object):
def __init__(self, data):
self.data = data
print(self.data)
if __name__ == "__main__":
nuralnetwork1 = Neuralnetwork(3)
print(nuralnetwork1.data) # Prints the number 3 to the console
nuralnetwork2 = Neuralnetwork(2)
print(nuralnetwork2.data) # Prints the number 2 to the console
print(nuralnetwork1.data + nuralnetwork2.data) # Prints the number 5 to the console