2013-05-07 179 views
-2

我正在使用Python。 在我的程序中,我使用「嘗試:」和「除了:」。在「除了」之外,我想發送一封電子郵件,告訴發生了一些錯誤,並且無法執行操作,但是我也想添加哪個錯誤。如何處理EXCEPT消息?

有沒有什麼辦法可以打印錯誤信息或在變量中使用它?

我希望我自己清楚

非常感謝

+5

你瞭解在[Python的教程]異常處理(http://docs.python.org/2/tutorial/errors .html)和[Python Wiki](http://wiki.python.org/moin/HandlingExceptions)? – 2013-05-07 17:52:36

+1

除了Python文檔的建議外,我還會推薦閱讀[FAQ](http://stackoverflow.com/faq) – artdanil 2013-05-14 19:40:33

回答

1

在Python < 2.6

try: 
    ... 
except Exception, e: 
    print(e) 

在Python> = 2.6

try: 
    ... 
except Exception as e: 
    print(e) 

這將使您的異常信息。

如果你想全面回溯,你可以使用以下命令:

import traceback 
try: 
    ... 
except Exception, e: 
    print traceback.format_exc() 
+1

'except exception,e'語法在Python 2中也被棄用。 Python 2.6和更新的版本支持'except as:e:'語法。 – 2013-05-07 18:06:36

+1

啊 - 很高興認識@MartijnPieters。謝謝 :-) – Ewan 2013-05-07 18:07:39

2

的Python> = 2.6

try: 
    ... 
except Exception as e: 
    print(e) 

的Python < 2.6

try: 
    ... 
except Exception, e: 
    print(e) 

它將打印的實際工作的消息。

+0

相同的語法也適用於Python 2.6和2.7。無需查看那裏的回溯模塊。對於Python 2.5及更早版本,使用'except Exception,e:'語法。 – 2013-05-07 18:07:32

+0

thx澄清。我會更新答案以反映這一點。 – pypat 2013-05-07 18:09:43