2013-05-07 236 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