首页 > 编程语言 > 详细

python learning-------装饰器

时间:2016-04-25 22:53:16      阅读:502      评论:0      收藏:0      [点我收藏+]

import functools

def log(func):
    @functools.wraps(func)
    def wrapper(*args, **kw):
        print(‘call %s():‘ % func.__name__)
        return func(*args, **kw)
    return wrapper

@log
def now():
    print(‘2015-3-25‘)

now()

def logger(text):
    def decorator(func):
        @functools.wraps(func)
        def wrapper(*args, **kw):
            print(‘%s %s():‘ % (text, func.__name__))
            return func(*args, **kw)
        return wrapper
    return decorator

@logger(‘DEBUG‘)
def today():
    print(‘2015-3-25‘)

today()
print(today.__name__)

本文出自 “心之所向素履以往” 博客,请务必保留此出处http://jwlin.blog.51cto.com/7560932/1767652

python learning-------装饰器

原文:http://jwlin.blog.51cto.com/7560932/1767652

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!