Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 为什么在对象';什么是建筑?_Python_Python 3.x_Oop_Object - Fatal编程技术网

Python 为什么在对象';什么是建筑?

Python 为什么在对象';什么是建筑?,python,python-3.x,oop,object,Python,Python 3.x,Oop,Object,给定类test,为什么不能通过调用它的一个方法和构造函数来实例化它 类测试: 定义初始化(self,a): self.a=a def打印(自身): 打印(self.a) 以下是一个例子: obj=test(“Hello”).print_a()打印所需的输出。 你好 >>>obj >>>打印(obj)#但对象不存在。 没有一个 >>>obj=test(“Hello”)#单独进行测试时显然有效。 >>>obj >>>对象打印a() 你好 为什么不可能将方法调用与构造函数调用链接起来 这是在pyt

给定类
test
,为什么不能通过调用它的一个方法和构造函数来实例化它

类测试:
定义初始化(self,a):
self.a=a
def打印(自身):
打印(self.a)
以下是一个例子:

obj=test(“Hello”).print_a()打印所需的输出。 你好 >>>obj >>>打印(obj)#但对象不存在。 没有一个 >>>obj=test(“Hello”)#单独进行测试时显然有效。 >>>obj >>>对象打印a() 你好 为什么不可能将方法调用与构造函数调用链接起来


这是在python3中实现的,您正在将obj分配给函数print_a的返回值(由于没有返回值,因此为None)。实际测试对象从未存储,因此在您尝试打印它时不再在范围内。

obj
print\u a
的返回值,它没有
return
语句,因此它返回
None
。在
obj=test(“Hello”).print\u a()
中,obj设置为无的打印结果。方法print_a返回无。可能重复