当一个类的实例被创建时,__init__方法会自动执行(在类实例创建完毕后执行),类似构造器。
__init__并不创建实例,__init__仅仅是创建实例后执行的第一个方法。
目的:
执行一些该对象必要的初始化工作。
补充:
通过创建自己的__init__方法,你可以覆盖默认的__init__方法(默认的方法什么也不做),从而能够修饰刚刚创建的对象。
class FooClass(object):
'''my very first class: FooClass'''
version = 0.1 # class (data) attribute
def __init__(self, nm='John Doe'):
'''constructor'''
self.name = nm # class instance (data) attribute
print 'created a class instance for', nm
def showname(self):
'''display instance attribute and class name'''
print 'your name is', self.name
print 'my name is', self.__class__.__name__
def showver(self):
'''display class(static) attribute'''
print 'your name is', self.name
print self.version # references FooClass.version
def addMe2Me(self, x): # does not use 'self'
'''apply + operation to argument'''
return x + x
参考文献:
1.《Python核心编程(第2版)》第2章2.18