zoukankan      html  css  js  c++  java
  • 装饰器

    1.def w1(funk):    #将w函数加载到内存

    2.@w1

    #函数在没有被调用前其内部代码是不会被执行的。   @函数名是Python里面的一种语法糖。

    执行w1函数,并将@w1下面的函数作为w1函数的参数,即@w1等价于w1(f1)

    将执行完的w1函数返回值赋值给@w1下面的函数的函数名。

    装饰器  可以对函数、类、方法进行加工。其语法简单,代码的可读性高。

    Python中变量名和对象是分离的。变量名可以指向任一对象。本质上装饰器起到一个重新指向变量名的作用,让同一变量名指向一个新返回的可调用对象,从而达到修改可调用对象的目的。  #  装饰器新建了一个可调用对象。

                                                                                        #可以理解为含有环境参量的闭包。

    装饰器本质上是一个Python函数,他可以让其他函数不需要做任何代码变动的前提下,增加额外功能,装饰器的返回值也是一个函数对象,它经常用于切面需要的场景,

    比如:插入日志、性能测试、事务处理、缓存、权限校验等场景。我们可以抽离出大量与函数功能本身无关的的雷同代码并继续重用。

    简单的说,就是为已存在的函数添加新的功能。

  • 相关阅读:
    JavaWeb学习笔记(9)
    JavaWeb学习笔记(8)
    JavaWeb学习笔记(7)
    JavaWeb学习笔记(6)
    JavaWeb学习笔记(5)
    JavaWeb学习笔记(4)
    Plans(Real-Time Update)
    CSP-J2 2020 题解(Updating)
    Lcez#111 yist
    洛谷P1104 生日
  • 原文地址:https://www.cnblogs.com/jacky912/p/10238539.html
Copyright © 2011-2022 走看看