zoukankan      html  css  js  c++  java
  • python基础----装饰器

    1      什么是装饰器 

      装饰器的实现方式

      高阶函数+嵌套+闭包

    2                     高阶函数:函数接受或返回的为一个函数名。

    嵌套 :函数里面定义函数

    闭包就是作用域

    语法糖:@

    3                     装饰器达到了目的,但是实际上是换了一个东西  运行是闭包函数 ,修改原函数的动作没有问题,但是   返回值还是闭包函数的

    所以 如果要达到在原函数设定返回值而运行后输出这个返回值 

    需要在闭包函数里面将return=原函数

     4                    原函数加上参数

    加上参数,则闭包函数也需要加上形参,并且在闭包函数里面传给原函数

    import time
    
    
    
    def fathe(func):
        def tt(*list,**dic):
            stat_time=time.time()
            func(*list,**dic)
            end_time=time.time()
            print(end_time-stat_time)
        return tt
    
    @fathe
    def foo(Date,sit,name):
        time.sleep(3)
        print('from the foo',Date,sit,name)
    
    foo(913,'19e','liuyun_sb')

    这个实例里面的@fathe函数  原函数有几个形参都适用

    再说一个无关的东西 

         python 本身真是太聪明了

    再说一个小东西

  • 相关阅读:
    作业5.1 四则运算----封装
    作业四
    作业2 (完)
    作业3
    作业二。。
    数独
    回答自己的提问
    《一个程序猿的生命周期》读后感
    阅读13-17章
    阅读10,11,12章
  • 原文地址:https://www.cnblogs.com/yuanji2018/p/8964925.html
Copyright © 2011-2022 走看看