2014-09-03 104 views

回答

4

只要它提供了详细和明确的错误消息,您可以使用内置的一个 - ValueError,例如,看起来逻辑在这里。

另一种选择是创建一个自定义的:

class InvalidFormatError(ValueError): 
    pass 

上有使相关的主题,我希望能帮助你决定选择哪一个选项:

+1

如果你创建一个自定义的异常类,它应该仍然是这个用例的ValueError子类(不仅仅是'Exception'的直接子类)。 – BrenBarn 2014-09-03 21:47:38

+0

@BrenBarn好点,我同意。 – alecxe 2014-09-03 21:48:03

3

你描述的声音像ValueError

当内置操作或功能的接收,其具有合适的类型,但不合适的值的参数,情况不是通过更精确异常如IndexError描述的升起。

2

我会使用ValueError

时引发一个内置的操作或功能的接收,其具有合适的类型,但不合适的值的参数,情况不是通过更精确异常描述如IndexError。

它是通过内置函数引发并不意味着你不能raise它也是。