专业企业网站建设公司价格,网站wap设置,赤峰浩诚网站建设公司,有哪些网站可以做h5一、简介 retry是一个用于错误处理的模块#xff0c;功能类似try-except#xff0c;但更加快捷方便#xff0c;本文就将简单地介绍一下retry的基本用法。 二、基本用法 retry-作为装饰器进行使用#xff0c;不传入参数时功能如下例所示#xff1a;
from retry import…一、简介 retry是一个用于错误处理的模块功能类似try-except但更加快捷方便本文就将简单地介绍一下retry的基本用法。 二、基本用法 retry-作为装饰器进行使用不传入参数时功能如下例所示
from retry import retryretry()
def make_trouble():Retry until succeedprint (retrying...)raiseif __name__ __main__:make_trouble()# 输出: 一直重试直到运行成功
retrying...
retrying...
retrying...
retrying...
retrying...
retrying...三、retry 参数介绍
def retry(exceptionsException, tries-1, delay0, max_delayNone, backoff1, jitter0, loggerlogging_logger):Return a retry decorator.:param exceptions: an exception or a tuple of exceptions to catch. default: Exception.:param tries: the maximum number of attempts. default: -1 (infinite).:param delay: initial delay between attempts. default: 0.:param max_delay: the maximum value of delay. default: None (no limit).:param backoff: multiplier applied to delay between attempts. default: 1 (no backoff).:param jitter: extra seconds added to delay between attempts. default: 0.fixed if a number, random if a range tuple (min, max):param logger: logger.warning(fmt, error, delay) will be called on failed attempts.default: retry.logging_logger. if None, logging is disabled.可以看到retry()在这里的功能是在其装饰的函数运行报错后重新运行该函数在上例中的效果就是反复运行make_trouble()这也是retry()的基本用法下面介绍其几个主要参数
exceptions传入指定的错误类型默认为Exception即捕获所有类型的错误也可传入元组形式的多种指定错误类型。tries定义捕获错误之后重复运行次数默认为-1即为无数次。delay定义每次重复运行之间的停顿时长单位秒默认为0即无停顿。backoff呈指数增长的每次重复运行之间的停顿时长需要配合delay来使用譬如delay设置为3backoff设置为2则第一次间隔为3*2^03秒第二次3*2^16秒第三次3*2^212秒以此类推默认为1。max_delay定义backoff和delay配合下出现的等待时间上限当delay*backoff**n大于max_delay时等待间隔固定为该值而不再增长。
附录git源码