码迷,mamicode.com
首页 > 其他好文 > 详细

装饰器

时间:2017-09-03 12:15:39      阅读:123      评论:0      收藏:0      [点我收藏+]

标签:验证   lex   返回   before   after   func   ret   def   一点   

简单的装饰器:
def  login(func):
def inner(arg):
print(‘对%s进行审查...‘%arg)
func(arg)
return inner
@login
def tv(name):
print(‘欢迎%s‘%name)
# tv = login(tv)
tv(‘alex‘)

复杂一点:

def before(name,d):
print(‘验证%s的%s信息‘%(name,d))
def after():
print(‘返回‘)
def p(before_f,after_f):
def login(func):
def inner(arg,rag):
before_f(arg,rag)
func(arg, rag)
after_f()
return inner
return login
@p(before,after)
def tv(name,r):
print(‘欢迎%s‘%name)
tv(‘王‘,‘学号‘)

装饰器

标签:验证   lex   返回   before   after   func   ret   def   一点   

原文地址:http://www.cnblogs.com/wp0810/p/7468134.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!