当要求非法状态时,我应该提出什么Python异常?

时间:2016-10-31 13:59:01

标签: python python-3.x exception

我有一个状态不时更新的对象。过了一会儿,我想问一下这个州。但是根据更新,我的状态可能尚未准备好被要求。如果我过早地要求国家,我想提出一个例外。 Python中正确的标准异常是什么?如果没有 - 我应该自己写吗?

PS:我在Python中查找了标准异常列表,但所有列表似乎只包含相当低级别的异常(如内存异常,算术异常等)。 Python中没有高级标准异常吗?

1 个答案:

答案 0 :(得分:2)

ValueError似乎是合适的。你也可以将它子类化。

class InvalidState(ValueError):
    """Exception raised when the state is invalid"""
    def __repr__(self):
        return 'The state is invalid'

然后使用raise InvalidState

提升它