zoukankan      html  css  js  c++  java
  • python中的装饰器

    '''
    func就是init(),这是一个把函数当做参数,当定义一个装饰器穿参数时,
    必须要在装饰器的内部将参数传递给执行的函数,否则会报错


    '''


    def login(func):
    def wrapper(*n):
    print("正在效验中", n)
    time.sleep(2)
    print('效验完成')
    func(*n)

    return wrapper


    @login
    def init(n,v):
    print("--->", n,v)


    init(5,4)
    # 只有在调用的时候才会执行装饰器中的代码

    # ----------------》带参数的装饰器的写法,以及关键字参数的装饰器的调用
    def logins(a):        # 负责接收装饰器的参数
    def login(func):     # 负责收函数
    def wrapper(*n, **ff):  # 负责接收函数的参数
    print("正在效验中", a, n)
    time.sleep(2)
    print('效验完成')
    func(*n, **ff)

    return wrapper

    return login


    @logins(a=10)
    def init(n, v, clas="3333"):
    print("--->", n, v, clas)


    init(5, 4, clas="1111")

  • 相关阅读:
    函数
    字符串格式化
    集合
    习题02
    int/str/list/tuple/dict必会
    元组/字典
    列表方法
    练习题(format、expandtabs、片层)
    字符串方法
    JMM
  • 原文地址:https://www.cnblogs.com/jingguorui/p/12321228.html
Copyright © 2011-2022 走看看