首页 > 编程语言 > 详细

[Python]理解一下装饰器

时间:2017-04-15 13:57:32      阅读:269      评论:0      收藏:0      [点我收藏+]
在oop中需要通过继承来实现,而python除了通过继承来实现装饰模式外,直接在语法层次支持装饰器
 
下面通过一个简单的示例来理解一下Python的装饰器
 
这里我将设计一个log类,在编写代码的时候可能会遇到这样的问题,需要记录下所有的操作,这个需求该怎么实现呢?
#python 装饰器
def log(text):
    def decorator(func):
        def wapper(*args):
            print(%s %s:%(text,func.__name__))
            return func(*args)
        return wapper
    return decorator

 

 
来仔细分析一下这个代码,log()函数接受一个文本信息,返回一个decorator函数,然后这个函数的作用就是接收一个新函数,并在调用函数前打印一些信息;

@log(获取时间)
def gettime()
    print(2017-4-15 11:11:11)

now = gettime()
now()

 

结果
技术分享


[Python]理解一下装饰器

原文:http://www.cnblogs.com/soeasy/p/6713727.html

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