参考博客地址:http://www.cnblogs.com/wupeiqi/articles/4980620.html
1.写代码要遵循开放封闭原则,简单来说,规定已经实现的功能代码不允许被修改,但可以被扩展,即:
封闭:已实现的功能代码块
开放:对扩展开发
2.装饰器完全替代f1函数,再在其函数体内增加f1函数体实现,如图1所示:
PS:注意代码的执行顺序
图1
装饰器理解自定义图如图2:用装饰器所定义的函数来覆盖原f1函数,这样可以在执行f1函数前后执行其他增加的函数。与原函数没有任何关系。
图2
3.采用万能参数*args,**kwargs来解决参数个数不统一情况。
4.双层装饰器
5.多层装饰器
6.更牛逼的装饰器-可以加参数
待续