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

    2019-05-29

    Python装饰器
      是一个闭包,把一个函数当做参数,返回一个替代版的函数,本质上就是一个返回函数的函数
    比较简单的装饰器:

    def func1():
    print("lilin is a good man")
    
    def outer(func):
    def inner():
    print("***********")
    func()
    return inner
    #f是函数func1的加强版本
    f=outer(func1)
    f()

    比较复杂的装饰器:

    def say(age):
    print("lilin is %d years old"%(age))
    say(-10)
    #装饰器
    def outer(func):
    def inner(age):
    if age<0:
    age=0
    func(age)
    return inner
    #say=outer(say)
    say(-10)


    注意:@outer相当于say=outer(say)

    通用装饰器:

     

    def outer(func):
    def inner(*args,**kwargs):
    #添加修改的功能
    func(*args,**kwarrgs)
    return inner
    
    @outer
    def say(name.age):
      print("%s,%d",%(name),%(age))
    #调用这个方法 say(name,age)

     

     

    喜欢的可以打赏!!!
  • 相关阅读:
    scjp考试准备
    scjp考试准备
    scjp考试准备
    scjp考试准备
    maven学习手记
    maven学习手记
    ExtJS MVC 学习手记3
    调整maven配置文件
    ExtJS MVC学习手记 2
    ExtJS MVC学习手记 1
  • 原文地址:https://www.cnblogs.com/despatch/p/10939413.html
Copyright © 2011-2022 走看看