分析掌握python装饰器(一)

作者: bd6b5cde5ce9 | 来源:发表于2017-12-15 22:28 被阅读38次

    如果你学了一段时间Python,那么你一定听说过装饰器。

    装饰器顾名思义,就是用来装饰函数的,给函数做一个漂亮的包装层来做一些有用的处理。

    让我们来一步一步的剥开包装

    (1)python 中函数即对象,函数名代表着指向函数对象的指针,所以它可以这样操作

    def a():

        return 'hello world'

    b = a

    b() #输出 hello world

    理解这一步是基础。

    (2)函数作为参数与返回值

    既然函数是对象,当然它既可以作为参数,也可以作为返回值

    def c(a):

        return a

    d=c(a)

    d() # 输出 hello world

    而我的装饰器,就是传入一个函数(被包装的函数),经过包装函数的包装,然后返回包装函数。

    在这里,包装函数返回的是最后的结果。一般情况下你见到的会是

    return func(*args,**kwargs) 

    这里就是返回被包装函数执行结果。

    (3)简单的示例

    让我们来想个简单的例子,你现在有一个计算的函数,我们想在每次计算的时候检查输入数据的类型,并且做出相应的反馈。

    明白了装饰器的构建,接下来我们要分析一下其他几种情况

    相关文章

      网友评论

        本文标题:分析掌握python装饰器(一)

        本文链接:https://www.haomeiwen.com/subject/ymkaixtx.html