2011-07-10 41 views
22

可能重複:
break on unhandled exception in pycharm如何使pycharm突破上我的異常

我在Python中新,我試圖調試使用PyCharm 1.5我的第一個Python程序。 我希望調試程序在我的代碼中發生異常(並且僅在我的代碼中)時中斷。

對於現在的情況是以下內容:我使用(按Ctrl + Shift + F8)對話框來配置調試器,如果我設置全部暫停=真所有異常=真然後調試器中斷過於頻繁,例如,它會在PyCharm 1.5.1 \ helpers \ pydev \ pydevd.py中的某個地方出現,這很煩人,每次都跳過。如果我設置了其他選項,那麼即使在我的代碼中發生異常時,調試器也不會中斷。

PS:順便說一句,如果我只是跳過PyCharm 1.5.1 \ helpers \ pydev \ pydevd.py中斷,然後繼續執行沒有可見的錯誤。所以,我不明白爲什麼它打破了所有

+2

如果你沒有在這裏得到一個答案它可能是值得的[在Pycharm問題跟蹤]提出問題(http://youtrack.jetbrains.net/issues/PY)。這看起來可能是一個錯誤。 Pycharm可能不應該在自己的代碼中打破異常。 –

+0

好的,感謝您的建議,我會在這裏發帖,如果我發現有什麼問題 –

+0

當您在任何位置添加調試點時它是否工作? –

回答

3

一種方式告訴除了從圖書館未來的例外的例外,是讓他們從一個自定義類,例如派生如果你的模塊被稱爲富,你可以有

class FooException(Exception): 
    pass 

,並有更多具體的例外規定源於此:

class MyMathException(FooException): 
    # etc. 

然後,在PyCharm,而不是啓用All Exceptions,加FooException到例外列表打破。

+0

我同意你的意見,但通常不是我提出異議 –

+0

哦。但我現在很困惑,你說過「當我的代碼發生異常(並且只發生在我的代碼中)」。 – UncleZeiv

+0

是的,例如,如果我調用缺少的方法,那麼異常發生在我的代碼中,但不是我拋出異常 –