本文摘自php中文网,作者anonymity,侵删。
python中在一个函数中加入多个装饰器的方法:可以在函数名前使用@逐一添加装饰器,如【@decorator1 @decorator2】。装饰器与对象一样,可以赋值给一个变量,也可以在其它函数中定义。

Python中的函数就是对象,可以进行赋值、定义,多个装饰器的需要在函数名前使用@进行逐一添加,执行顺序是从上往下的,具体的操作过程需要在函数装饰器中进行。
首先我们知道函数就是对象,因此对象可以赋值给一个变量,也可以在其他函数里定义。
所以装饰器也是一样,这个例子中自定义了两个装饰器,然后在test()函数上添加了两个装饰器,运行结果正常。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | #!/usr/bin/env python
#coding:utf-8
def decorator1(func):
def wrapper():
print 'hello python 之前'
func()
return wrapper
def decorator2(func):
def wrapper():
func()
print 'hello python 之后'
return wrapper
@decorator1
@decorator2
def test():
print 'hello python!'
test()
|
运行结果:
阅读剩余部分
相关阅读 >>
Python项目如何运行
Python能开发单片机吗
Python可以做游戏辅助吗
Python 2.7.x 和 3.x 版本的重要区别
最有用的Python经典书籍推荐
Python的cmd命令行在哪里
Python之33个关键字是哪些
Python属于开源语言吗
使用Python变量易错点介绍
Python是什么,如何使用Python
更多相关阅读请进入《Python》频道 >>
人民邮电出版社
python入门书籍,非常畅销,超高好评,python官方公认好书。
转载请注明出处:木庄网络博客 » Python中如何在一个函数中加入多个装饰器