我有一個簡單的異常類:的Python例外,當一個if語句失敗
class Error(Exception):
def __init__(self, msg):
self.msg = msg
def __str__(self):
return self.msg
我也有一個,如果我想從取決於什麼失敗拋出不同的異常聲明。
if not self.active:
if len(self.recording) > index:
# something
else:
raise Error("failed because index not in bounds")
else:
raise Error("failed because the object is not active")
此作品不夠好,但嵌套if
S代表的東西這個簡單看似凌亂(也許這只是我)......我寧願有類似
if not self.active and len(self.recording) > index:
再拋基於哪裏/如何如果失敗的例外。
是這樣的可能嗎?嵌套0s(在第一個示例中)解決此問題的「最佳」方式?
預先感謝您!
**我使用需要Python 2.7版的一些庫,因此,該代碼是2.7
如果你想要詳細的呃ror消息,然後多個如果是要走的路。每個「if」產生一個獨特的東西,所以它不會過於健談。 – tdelaney
使用防禦手段! – Shasha99