我想了解引发ValueError和异常之间的区别。我已经尝试在相同的代码(即使在同一个分支),结果是相同的 - 我收到了一条错误消息。Python:ValueError和Exception之间的区别?
我对这个问题做了一个研究,但没有发现有关这方面的讨论。然后我读异常的文档,发现ValueError异常以下definition:
Raised when a built-in operation or function receives an argument that has the right type but an inappropriate value, and the situation is not described by a more precise exception such as
IndexError
.
所以,按照我的理解,一个例外是一个更通用的术语,并且可以ValueError错误在某些特定情况下可以应用。但既然提出这两件事的结果是一样的,我想明白,区分ValueError和Exception的实际意义是什么。 Python版本应该在这里不相关。谢谢!
编辑: 感谢您的答案我明白了,这两个术语在try-exception构造中有什么区别。但是,在提高它们的情况下它们又有什么不同,而不是除外?
raise Exception('blah')
和
raise ValueError('blah')
回答到@PeterWood:在这两种情况下我刚刚得到了错误信息“嗒嗒”,但在一种情况下,它是“例外:胡说”,并在第二个: “ValueError:blah”。我在这种情况下看到他们俩之间没有实际的区别。
你是什么意思*“结果...是相同的”*?哪个结果?你没有向我们展示过任何东西。 –
@PeterWood _“结果是一样的 - 我收到了错误信息。”_ –
@PeterWood我编辑了我的问题,请看看它。 –