Possible Duplicate:
Variables inside and outside of a class __init__() function
我注意到在Python中,人们用两种不同的方式初始化类属性。
第一种方法是这样的:
class MyClass:
__element1 = 123
__element2 = "this is Africa"
def __init__(self):
#pass or something else
另一种风格是:
class MyClass:
def __init__(self):
self.__element1 = 123
self.__element2 = "this is Africa"
初始化类属性的正确方法是什么?
这两种方法都不一定正确或不正确,它们只是两种不同的类元素:
__init__
之外的元素是静态元素;它们属于类。__init__
方法中的元素是对象(self
)的元素;它们不属于类。使用一些代码可以更清楚地看到:
如您所见,当我们更改类元素时,两个对象的类元素都发生了更改。但是,当我们更改object元素时,另一个对象保持不变。
我想这个样本解释了不同风格之间的区别:
element1绑定到类,element2绑定到类的实例。
相关问题 更多 >
编程相关推荐