如何在抛出异常时传递变量,并在捕获时获取?
现在我只有一个空的异常类。我想知道当这个异常被抛出时,怎么给它一个变量,然后在处理这个异常的 try...except 语句中怎么取出这个变量。
class ExampleException (Exception):
pass
2 个回答
-3
你可以这样做。
try:
ex = ExampleException()
ex.my_variable= "some value"
raise ex
except ExampleException, e:
print( e.my_variable )
运行得很好。
77
给它的构造函数传一个参数,把这个参数存储为一个属性,然后在except
语句中取出来使用:
class FooException(Exception):
def __init__(self, foo):
self.foo = foo
try:
raise FooException("Foo!")
except FooException as e:
print e.foo