zoukankan      html  css  js  c++  java
  • 叠加多个装饰器与有参数的装饰器。

    叠加多个装饰器:

         加载顺序为从下到上,执行顺序为从上到下。

    加载顺序:Index 作为实参给到outter3outter3(index)的返回结果wrapper3再给到outter2,outter2(wrapper3)的返回结果wrapper2再给到outter1outter1(wrapper2)返回的结果为wrapper1。(自下而上。)

    再令index=wrapper1(指向最上面的@()调用一次后的地址,也就是指向wrapper1的地址)  

    执行顺序:

    此时调用index(),实际调用的是outter1( wrapper2 )里面的wrapper1,执行到,func()时候,func此时为wrapper2outter2中执行wrapper2,依次类推。

    有参数的装饰器:

         针对有参数的装饰器,需要在外出在嵌套一个函数,这样做的目的是为了遵循装饰器的原则。需要几个参数,就在装饰器外再嵌套几层,通过一层的传入。

    三元表达式:  res=x if x>y else y

    列表生成式:  [i for i in range(10)]

                  [i for i in range(10) if i>4]

    字典生成式:  

    匿名函数      lambda  x : x**2      x的二次方作为返回值。

    Sorted 排序    l=[4,2,3]

                   L_new=sorted(l,reverse=True)

  • 相关阅读:
    php环境下所有的配置文件以及作用
    获取登陆用户的ip
    curl模拟post和get请求
    linux 下安装php curl扩展
    php常用面试知识点
    git使用步骤
    laravel框架基础知识点
    ci框架基础知识点
    ajax
    Mysql 中需不需要commit
  • 原文地址:https://www.cnblogs.com/yu-931017/p/10046505.html
Copyright © 2011-2022 走看看