def w1(func):
print('装饰器1....')
def w1_in():
print('w1_in.....')
func()
return w1_in def w2(func):
print('装饰器2.....')
def w2_in():
print('w2_in......')
func()
return w2_in @w1
@w2
def f1():
print('f1....') f1()

你知道上面的代码执行的步骤吗?.................................................................................

......................................................................................................................................

......................................................................................................................................

......................................................................................................................................

装饰器2.....
装饰器1....
w1_in.....
w2_in......
f1....

 装饰带有带有参数的函数

def w1(func):
print('装饰器1....')
def w1_in(a,b):
print('w1_in.....')
func(a,b)
return w1_in def w2(func):
print('装饰器2.....')
def w2_in(a,b):
print('w2_in......')
func(a,b)
return w2_in @w1
@w2
def f1(a,b):
print('a=%d,b=%d'%(a,b)) f1(,)

带有参数的装饰器:

def functest(str):
def func_1(func):
print(str)
def func_in():
print('装饰器')
func()
return func_in return func_1 @functest('带参数的装饰器')
def f():
print('f函数') f()
带参数的装饰器
装饰器
f函数

最新文章

  1. 烂泥:高负载均衡学习haproxy之安装与配置
  2. 如何撰写PRD
  3. SpringJUnit4测试--测试无反应/控制台报空指针的解决---junit的jar冲突!
  4. *[topcoder]LittleElephantAndBalls
  5. 使用Eclipse把java文件打包成jar 含有第三方jar库的jar包
  6. C/C++笔试准备(2)
  7. hdu 4691 Front compression (后缀数组)
  8. linux文件权限解析(摘)
  9. 关于防止sql注入的几个知识点
  10. Java集合干货——LinkedList源码分析
  11. 即时通讯协议之XMPP
  12. ubuntu 使用旧式Gnome风格的菜单
  13. HTML、CSS知识点,面试开发都会需要--No.2 CSS
  14. python使用MySQLdb实现连接数据库Mysql
  15. jstack 使用一例
  16. QHBoxLayout移除控件
  17. 如何使用gradle打jar包
  18. IntelliJ IDEA 优化总结
  19. LIST OF NOSQL DATABASES [currently 150]
  20. Android studio 中创建AIDL Service

热门文章

  1. Hrbust 2320 OX (博弈)
  2. bzoj1455&&luogu2713罗马游戏
  3. Break Number --AtCoder
  4. Linux安全漏洞审计工具Lynis
  5. 记录一次(xheditor-1.1.6-zh-cn.min.js)的错误:Cannot read property 'match' of undefined的问题解决
  6. 使用PreloadJS加载图片资源
  7. ArcObject开发,程序编译通过,但无法启动的解决
  8. dedecms 调用栏目或文章所属上下级关系
  9. Linux下搭建PHP开发环境(LAMP)
  10. 七天学会ASP.NET MVC (三)——ASP.Net MVC 数据处理 【转】