我需要捕获所有错误,异常以及阻止代码执行并将其存储在变量中的所有内容。 我想要这样的东西:
try:
Error generating code
except as err:
print err
但这不起作用。有没有其他方法可以做同样的事情?
答案 0 :(得分:4)
except as err:
不起作用,因为正确的语法是:
except TypeOfError as somename:
要捕获任何类型的错误,请使用Exception
作为类型,
它是Python中所有非退出异常的公共基类:
try:
# Error generating code
except Exception as err:
print(err)
err
将是引发的实际异常的实例,
您可以使用type(err)
查看其正确的类型,
它是dir(err)
的属性和方法。
请注意,建议使用可能引发的最具体类型的异常。
在Python tutorial on error handling中查看更多详细信息。