您好,我对通过Python的类中的方法__init__
方法有疑问。人们会说这是类实例正在作为__init__
方法中的第一个参数在这里传递。Python中类的__init__方法中的self是什么?
Class A():
def __init__(self):
pass
def check(self):
pass
a = A()
a.check()
因为我们理解,此处“A”为被传递的第一个参数的方法__init__
。但是在这里我们刚刚创建了类A的实例。至于其他方法检查,当我们要做a.check()
时,会理解好,我们在这里调用一个类的实例来调用,以便它被传递。但对于__init__
方法,我们没有做任何事情,只是创建了实例。那么它是如何通过的。
举一个例子, a = a + 10 ...直到这个表达式才开始初始化。与__init__
一样。
我们刚刚在这里创建了实例a = A()。那么会通过这里。
我知道我的问题有点棘手。但是这个问题在我的采访中被问到了。
请有人可以帮忙吗?
除'__new__'被覆盖(或使用元类),禁用此行为。构造对象时,__init__'总是被**调用。它像一个*构造函数*(就像在Java中一样)。 –
hi @WillemVanOnsem ..感谢您的回答,我知道这是与java相同的构造函数。但我的问题有点不同。喜欢了解自我如何作为第一个参数被传递,如果我们没有用这个参数来调用这个方法。 – Anendra