zoukankan      html  css  js  c++  java
  • python3学习之装饰器

    在代码运行期间动态的增加功能,而不改变原代码的功能的方式称之为装饰器。

    装饰器函数符合高阶函数,因为它传入的参数和返回值都是函数,它也符合嵌套函数。

    代码示例:

    def log(func):
         def warpper(*args,**kw):
               print('hello'return func()
         return warpper
    @log
    def func():
           print( 'world')
    func()

    执行@log--->log函数--->返回一个函数warpper--->调用func函数(实际执行的是warpper函数)--->调用原始函数func

    1.执行装饰器函数的时候,被装饰函数当作参数传递给装饰器函数
    2.装饰器函数的返回值会重新赋值给装饰器函数的内部函数,此时装饰器函数的参数指向由原先的被装饰函数变为装饰器函数的内部函数。
    3.调用被装饰函数的时候,执行的是装饰器函数的内部函数的函数体

  • 相关阅读:
    5.Java 线程状态之 TIMED_WAITING
    3.Java 线程状态之 BLOCKED
    4.Java 线程状态之 WAITING
    2.Java 线程状态之 RUNNABLE
    1.关于Java的线程状态
    js注入,canvas截图
    node使用3
    node使用2
    node的使用1
    学习进度报告
  • 原文地址:https://www.cnblogs.com/Zhang-engineer/p/11157211.html
Copyright © 2011-2022 走看看