python中的__init__是构造函数还是方法?
有的地方说constructor,有的地方说method,很迷惑。
请您参考如下方法:
称其为方法是正确的。将其称为构造函数是不正确的,或者至多是不准确的。
具体来说,它是一个magic method .它们也被称为特殊方法、“dunders”和其他一些名称。
此特定方法用于定义对象的初始化行为。它与构造函数并不十分相似,甚至不是在新实例上调用的第一个方法。
我们使用 __init__ 来设置已创建实例的状态。当我们使用语法 A() 创建类 A 的实例时,它会被自动调用,这就是为什么有人可能将其粗略地称为“构造函数” .但是 __init__ 的职责与实例构造无关,实际上 __new__ 魔术方法在这方面更类似于构造函数。
