摘要: 1、原函数有多个参数的情况,计算函数运行时间 import time def performance(f): def fn(*args,**kw): t1 = time.time() r=f(*args,**kw) t2 = time.time() print 'call %s() in %fs'%(f.__name__,... 阅读全文
posted @ 2017-04-14 23:52 不锈钢老鼠 阅读(517) 评论(0) 推荐(0) 编辑
摘要: 1、特殊方法 定义在class中 不需要直接调用,python的某些函数或操作符会自动的调用对应的特殊方法。 如定义了person类,使用print p 语句打印person类的实例时,就调用了特殊方法__str__() 此时就需要在person类中实现这个方法。 使用特殊方法时注意: 只需要编写用到的特殊方法 有关联性的特殊方法都必须实现(如__getattr__,__setatt... 阅读全文
posted @ 2017-04-14 23:51 不锈钢老鼠 阅读(1160) 评论(0) 推荐(0) 编辑
摘要: 1、父类、基类、超类 -----> 子类,派生类,继承类 has关系应该使用组合而不是继承,如book类应作为student类的属性而非子类。 总是从某个类继承,如果没有特定的类就从object类继承。 不要忘记调用super().__init__来初始化父类,否则继承类将没有父类的属性。 def __init__(self,args): super(SubClass,self)... 阅读全文
posted @ 2017-04-14 23:50 不锈钢老鼠 阅读(484) 评论(0) 推荐(0) 编辑
摘要: 1、python中初始化实例属性 必须在__init__(self,…)方法内(注意:双下划线)初始化实例,第一个参数必须为self。 如需动态添加属性,可用 **kw class Person(object): def __init__(self,name,gender,birth,**kw): self.name = name self.gende... 阅读全文
posted @ 2017-04-14 23:26 不锈钢老鼠 阅读(4390) 评论(0) 推荐(1) 编辑