![](/img/trans.png)
[英]How can I write a `try`/`except` block that catches all exceptions?
[英]How do we write an `except` statement which catches nothing?
我想要一個try
塊,這樣在try
塊內引發的任何異常都不會被處理。 這樣我就可以編寫一個 try 塊來為將來做准備。 總有一天,我會寫一些有意義的錯誤處理。 但是,我還沒有真正的except
語句。 以下類型的作品,但很丑
_ = type("", (Exception,), dict())
try:
lizard = [1, 2, 3]
y = z + w
print(lizard[983])
except _:
print("I hope this string never prints")
完全跳過except
子句。 try
語句至少需要一個except
子句或finally
子句,無論您是否捕獲異常,它都會執行。
try:
lizard = [1, 2, 3]
y = z + w
print(lizard[983])
finally:
pass
finally
子句實際上不會執行任何代碼,並且不會以任何方式影響代碼的控制流; 它只是在您離開try
語句之前注入一個空操作,無論是通過成功完成代碼還是通過引發未捕獲的異常。
一旦開始添加except
子句,您可以刪除finally
子句或將其保留在原處。
(刪除的答案會捕獲並立即重新引發任何異常,這也很好 IMO:
try:
...
except Exception:
raise
)
try:
# do something
except:
pass # this will make nothing
pass 關鍵字用於此目的。 當您什么都不想做時,只需編寫一些代碼,然后再回來考慮您真正想在那里做什么(或者至少我就是這樣使用它的)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.