考慮到您有兩個函式func1和func2,其中func2是func1的后退選項。然而,你也可以通過一個標志來選擇總是選擇func2。有什么方法可以避免多余的代碼,并將 except/else 統一起來,因為它們具有相同的內容?
if func1_flag == true:
try:
func1()
except:
func2()
else:
func2()
uj5u.com熱心網友回復:
你可以在try塊中包含if陳述句,如果func1_flag不是True,則引發一個例外:
try:
if not func1_flag:
raise ValueError
func1()
except:
func2()
注意,如果你知道func1產生哪些例外,你應該在except陳述句中指定確切的例外型別。
uj5u.com熱心網友回復:
有一個方法,但它有點丑陋。
try。
if not func1_flag:
引發例外。
func1()
except:
func2()
如果func1_flag為假,這將引發一個例外。然后except塊被執行。
你也可以在func1()中引發一個例外。
但是我沒有看到你的風格有什么大問題。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/320018.html
標籤:
