Python:ValueError和Exception之间的区别?

Python:ValueError和Exception之间的区别?,第1张

Python:ValueError和Exception之间的区别?

ValueError
继承
Exception
。您可以决定仅捕获
ValueError
Exception
,这就是异常继承的目的。

在此示例中:

try:    a=12+"xxx"except Exception:    # exception is trapped (TypeError)

异常被捕获,所有异常(

baseException
异常除外)都被
except
语句捕获。

在另一个示例中:

try:    a=12+"xxx"except ValueError:    # not trapped

在这里,异常不会被捕获(

TypeError
不是
ValueError
并且不会继承)

通常,您使用特定的异常来仅捕获可能发生的异常(最好的例子是

IOError
在处理文件时),而其余的则未被捕获。捕获所有异常的危险是获得一段不会崩溃但什么都不做的代码。

(对答案进行编辑以响应您的编辑:)引发异常时:您正在创建一个实例,

Exception
该实例将被将来的
exceptValueError:
语句过滤掉。该消息有所不同,因为异常的表示形式(在打印时)包括异常类名称。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5640177.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存