摘要:
给实例动态添加方法,需引入types模块,用其的MethodType(要绑定的方法名,实例对象)来进行绑定;给类绑定属性和方法,可以通过 实例名.方法名(属性名) = 方法名(属性值) 来进行绑定。给类添加方法,通过@classmethod;给类添加静态方法通过@staticmethod impor 阅读全文
摘要:
装饰器(decorator)应用的场景:1、引入日志2、函数执行时间统计3、执行函数前预备处理4、执行函数后清理处理5、权限校验等场景6、缓存# 通用装饰器import functoolsdef log(func): # 若是不加这个,test()函数经过装饰后,test.__name_ 变成了 w 阅读全文
摘要:
# 定义一个函数def test(number): # 在函数内部再定义一个函数,并且这个函数用到外边函数的变量, # 那么将这个函数以及用到的一些变量称之为 闭包。 def text_in(number_in): print('in test in 函数, number_in is %d ' % 阅读全文
摘要:
可以直接作用于for循环的数据类型有以下几种: 一类是集合数据类型,如list、tuple、dict、set、str等; 一类是generator,包括生成器和带yield的generator function。 这些可以直接作用于for循环的对象统称为可迭代对象:Iterable。 可以使用isi 阅读全文
摘要:
传统的绑定属性值,会把属性暴露出去,而且无法检查参数是否合法,如下: class Test(object): def __int__(self,age): self.age = age 为了检查参数的合法性,可以设置一个get_age()方法,和一个set_age()方法,如下: class Tes 阅读全文