装饰器,生成器,推倒式

装饰器:

  在不改变对象结构的情况下,向其添加新功能,是一种结构型的设计模式。本质上是一个高级Python函数,通过给别的函数添加@标识的形式实现对函数的装饰。

  装饰器的返回值也是一个函数对象。它经常用于有切面需求的场景,比如:插入日志、性能测试、事务处理、缓存、权限校验等场景。装饰器是解决这类问题的绝佳设计,有了装饰器,我们就可以抽离出大量与函数功能本身无关的雷同代码并继续重用。

staticmethod:无self参数,外部可直接访问

classmethod:类方法,第一个参数为cls,可通过类名来访问

property:属性,函数当做属性访问

生成器:函数中含有yield关键字。生成器是一个迭代器,在调用生成器执行的过程中,每次遇到yield关键字时,函数会暂停并保存当前所有运行信息,返回yield的值,并在下一次执行next()方法时,从当前位置继续运行。 

推导式:

  列表推导式 [n for n in mylist if n > 0]
  生成器表达式 (n for n in mylist if n > 0)
  字典推导式 {key: value for key, value in mydict.items() if value > 200}
  集合推导式 {key for key in myset if key != 0}

猜你喜欢

转载自www.cnblogs.com/zhanghaibin16/p/11783712.html