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

    装饰器

    • 理解:
      • 装饰:房子不装修就可以住,如果装修,不影响你住.而且体验更加,让你生活增加了很多功能:洗澡等
      • 器: 工具
    • 开放封闭原则
      • 开放:对代码拓展开放的.更新地图,加新枪等.
      • 封闭:对源码的修改是封闭的.
        • 闪躲用q,就是一个功能.一个函数.别人打你,射你,等..这个功能不会改变
    • 装饰器:完全遵循开放封闭原则.
      • 定义:在不改变原函数代码以及调用方式的前提下,为其增加新的功能
      • 装饰器就是一个函数
      • 装饰器的本质就是闭包(自由变量)
    • 装饰器的应用
      • 登陆认证
      • 这周周末作业:模拟博客园登录的作业.装饰器的认证功能
    • 语法糖

    装饰器函数

    def wrapper(func):
        def inner():
            print('函数执行前')
            ret=func()
            print('函数执行后')
            return ret
        return inner
    
    
    @wrapper     1. --->index=wrapper(index)  --->执行wrapper函数  --->返回inner   则:index =inner
    def index():
        print('index')
        return "sss"
    
    index()    2. index()执行 则为inner()执行   此时执行inner函数   打印1,执行func函数,此时func函数为开始传入的index  则执行index函数内  内容  然后执行打印2
    
    输出结果:
        函数执行前
        index
        函数执行后
    

  • 相关阅读:
    C++ 的查漏补缺
    Model元数据解析
    Controller
    路由
    win8系统 Reflect 破解
    MVC运行原理
    源代码Log
    linq 分类
    EF 实体关系
    第二十六章 计算限制的异步操作
  • 原文地址:https://www.cnblogs.com/luyi84895838/p/11727336.html
Copyright © 2011-2022 走看看