首页 > 系统 > 其他 >

深入理解python的装饰器

2015-11-19

Python(英语发音: paθn ), 是一种面向对象、解释型计算机程序设计语言,由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年,Python 源代码同样遵循 GPL(GNU General Public Licens

Python(英语发音:/paθn/), 是一种面向对象、解释型计算机程序设计语言,由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年,Python 源代码同样遵循 GPL(GNU General Public License)协议。Python语法简洁而清晰,具有丰富和强大的类库。它常被昵称为胶水语言,能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。常见的一种应用情形是,使用Python快速生成程序的原型(有时甚至是程序的最终界面),然后对其中有特别要求的部分,用更合适的语言改写,比如3D游戏中的图形渲染模块,性能要求特别高,就可以用C/C++重写,而后封装为Python可以调用的扩展类库。需要注意的是在您使用扩展类库时可能需要考虑平台问题,某些可能不提供跨平台的实现。
那么我们要如何来理解python的装饰器呢?
先看个简单的小例子:
def printB(fn):
   def wrapped():
       return "printB" +fn()+"printb"
   return wrapped
def printLi(fn):
   def wrapped():
       return "printLi" +fn()+"printli"
   return wrapped
@printB
@printLi
def hello():
   return "hello world"
print hello()
#printB printLi  hello world  printli  printb

这是是个简单的装饰器实现,要理解装饰器首先要理解python中对象的概念,这里函数就可以看作是对象,进行赋值等各种操作,你可以在函数中再去定义函数,把函数当做参数来传递。
在装饰器的高级用法中还可以在装饰器函数里面传入参数,甚至是缺省参数,更全面的装饰装饰器,这种装饰器的概念类似于AOP编程思想,你理解了多少?
如果想深入体验LINUX系统的新手,也可以先下载一个方德Linux软件中心试用一下。
相关文章
最新文章
热点推荐