zl程序教程

您现在的位置是:首页 >  后端

当前栏目

【说站】python操作带参的装饰器

Python 操作 装饰 带参
2023-06-13 09:13:23 时间

python操作带参的装饰器

说明

1、装饰函数的第一个参数是装饰func,和以前一样。

2、另一个参数timelimit是用位置参数写的,有默认值。

3、和原来一样使用了可变参数的写法。

实例

from decorator import decorator
 
@decorator
def warn_slow(func, timelimit=60, *args, **kw):
    t0 = time.time()
    result = func(*args, **kw)
    dt = time.time() - t0
    if dt > timelimit:
        logging.warn('%s took %d seconds', func.__name__, dt)
    else:
        logging.info('%s took %d seconds', func.__name__, dt)
    return result
  
@warn_slow(timelimit=600)  # warn if it takes more than 10 minutes
def run_calculation(tempdir, outdir):
    pass

以上就是python操作带参装饰器的介绍,希望对大家有所帮助。