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.调用被装饰函数的时候,执行的是装饰器函数的内部函数的函数体

  • 相关阅读:
    iOS 列表三级展开
    iOS 聊天界面
    iOS 地图(添加大头针)
    iOS 地图
    swift 快速创建一些基本控件
    swift
    swift
    swift4.2 打印所有系统字体
    Xcode 去掉控制台无用打印信息
    swift
  • 原文地址:https://www.cnblogs.com/Zhang-engineer/p/11157211.html
Copyright © 2011-2022 走看看