我是一個Java開發人員,他是Python的新手,我正在將Java類重寫爲Python類。我試圖儘可能地模仿Python類中原始類的流。 Java類有幾行,Python是否具有拋出新Exception的Java等價物(「text here」)
if(condition)
throw new Exception("text here")
我一直在尋找在Python documentation for exceptions而一直沒能找到一個Python等同於Java語法。
我通過閱讀這篇StackOverflow post試過的東西(我認爲是接近)與raise Exception("text here")
,但它好像這是一個try
except
塊內使用,將導致從try
塊到except
塊的跳躍;我試圖避免try
except
塊,只是拋出一個異常。
一個解決方案,我認爲可能的工作是這樣的,
try:
if(condition):
raise Exception("text here")
except:
...
但我想知道是否有一種方法更密切相關的Java方法,這樣我可以保持儘可能多的流盡可能(有他們看起來相似)。
'raise'就像'throw'; 'try'就像'try'。你不需要*添加'try'塊來在Python中使用異常。 – Ryan
Java異常完全相同:它們要麼跳到最近的合適的catch塊,要麼產生堆棧跟蹤:)嘗試說'except:pass',看看會發生什麼。 – Ashalynd
請注意,您可能會派生自己的異常:https://docs.python.org/2/tutorial/errors.html#user-defined-exceptions –