职位:技术总监 1、精通c++(linux平台、vc++Mfc、qt)、java、php、unity3d,略懂python 2、用c++开发过嵌入式产品,用c++开发过大型银行运维产品 3、用java开发大型银行运维产品,学校教务系统 4、用php开发进销存系统(在销售中),用php开发淘宝小程序 5、用unity3d开发衣柜设计软件,在运营中
分类: Python/Ruby
2011-09-15 21:12:51
__init__()
当一个类实例被创建时, __init__() 方法会自动执行, 在类实例创建完毕后执行, 类似构建函数。__init__() 可以被当成构建函数, 不过不象其它语言中的构建函数, 它并不创建实例--它仅仅是你的对象创建后执行的第一个方法。它的目的是执行一些该对象的必要的初始化工作。通过创建自己的 __init__() 方法, 你可以覆盖默认的 __init__()方法(默认的方法什么也不做),从而能够修饰刚刚创建的对象
__init__()需要一个默认的参数self,相当于this
__call__
1. class Aclass:
2. def __call__(self):
3. print 'Hi I am __call__ed';
4.
5. def __init__(self, *args, **keyargs):
6. print "Hi I am __init__ed";
Here, executing x = Aclass() will call __init__() and just x() will call __call__(). Hope this helps
__call__( self[, args...])
Called when the instance is ``called'' as a function;
x = Aclass() 输出 Hi I am __init__ed
x() 输出 Hi I am __call__ed
if __name__ == '__main__':
当运行当前脚本,就会执行if __name__=="__main__"下的函数,如果你是当模块被其他程序import的,那么就不会执行。主要是测试用,测试你写的这个模块有没有实现你想要的功能