我刚刚学习 Python,我来自 C 背景,所以如果我在两者之间有任何混淆/混淆,请告诉我。
假设我有以下课程:
class Node(object):
def __init__(self, element):
self.element = element
self.left = self.right = None
@classmethod
def tree(cls, element, left, right):
node = cls(element)
node.left = left
node.right = right
return node
这是一个名为 的类Node
,它重载了构造函数,以便在需要时能够处理不同的参数。
仅定义(如上所示)与执行以下操作有self.element
什么区别:__init__
class Node(object):
element, left, right = None
def __init__(self, element):
self.element = element
self.left = self.right = None
是不是self.element
和定义__init__
的类的element
变量一样?那不会覆盖element
fromNone
到element
传入的值__init__
吗?