python如何修饰带参数的装饰器

  • 更新时间:2021-06-25 10:05:58
  • 编辑:隗秋英
我们帮大家精选了相关的编程文章,网友从瑜英根据主题投稿了本篇教程内容,涉及到Python相关内容,已被159网友关注,相关难点技巧可以阅读下方的电子资料。

参考资料

正文内容

为学习python的程序员分享一篇技术文章,技术点分析的很透彻,改了一下错误代码,觉得好就请收藏下。

python如何修饰带参数的装饰器

本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。

1、概念

修饰带有参数的函数的装饰器,装饰器的作用是返回一个函数的代理。

2、修饰方法

(1)定义一个装饰器函数并传递类对象

(2)在定义的装饰器函数内部定义一个代理函数对象,此代理函数对象与原函数传递的参数一致,并负责处理装饰器拦截方法等工作,最后返回一个类对象

(3)使用装饰器修饰类必须重载运算符__call__保证可被动态调用(类似与反射创建类对象)

3、实例

def decorator(fn):
    def proxy(*args, **kwargs):
        u"""
        作为代理函数来调用原有的函数,并对原来的函数进行auth的校验
        :param args:
        :param kwargs:
        :return:
        """
        print("auth checking")                return fn(*args, **kwargs)        return proxy   @decoratordef fn(a=9, b=10):
    print(a+b)

以上就是python修饰带参数装饰器的方法,希望能对大家有所帮助。

相关教程

  • 关于python中导入文件到list的问题

    这篇文章主要介绍了关于python中导入文件到list的问题,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

    发布时间:2021-05-02

  • Python下使用Scrapy爬取网页内容的实例

    今天小编就为大家分享一篇Python下使用Scrapy爬取网页内容的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

    发布时间:2019-08-26

用户留言