在Python中传递带有自定义异常的对象的正确方法是什么?

在给定的代码中,已创建了自定义异常FooException,它是超类Exception的子类。我们将字符串对象传递给自定义异常,如下所示

示例

#foobar.py

class FooException(Exception):

def __init__(self, text, *args):

super ( FooException, self ).__init__ ( text, *args )

self.text = text

try:

bar = input("输入一个字符串:")

if not isinstance(bar, basestring):

raise FooException(bar)

except FooException as r:

print 'there is an error'

else:      

print type(bar)

print bar

如果此脚本按如下方式在终端上运行,我们得到

python foobar.py

如果输入字符串,则会得到以下内容

输出结果

"C:/Users/nhooo1/~foobar.py"

输入一个字符串:'voila'

<type 'str'>

Voila


以上是 在Python中传递带有自定义异常的对象的正确方法是什么? 的全部内容, 来源链接: utcz.com/z/358711.html

回到顶部