我是新來的蟒蛇。我試圖創建一個重試裝飾器,當應用於一個函數時,它將繼續重試,直到滿足一些條件(爲了簡單起見,重試10次)。我可以將異常作爲參數傳遞給python中的函數嗎?
def retry():
def wrapper(func):
for i in range(0,10):
try:
func()
break
except:
continue
return wrapper
現在,將重試任何異常。我如何改變它,使其重試特定的例外情況。 e.g,我想用它喜歡:
@retry(ValueError, AbcError)
def myfunc():
//do something
我想myfunc
將僅重試它拋出ValueError
或AbcError
。
現在增加了一個'break'。謝謝!。編輯:我認爲這是重試的邏輯錯誤。我只需要'for'循環我認爲 –