Python函数可能引发哪些异常?

时间:2020-03-06 14:53:52  来源:igfitidea点击:

Python中有什么方法可以确定(内置)函数可能引发的异常吗?例如,内置int的文档(http://docs.python.org/lib/built-in-funcs.html)并未说明如果s不是则可能引发ValueError的事实。有效格式化的int。

这是re.compile()或者任何给定的Python库调用是否引发异常的重复吗?

解决方案

除了来源之外,我不知道任何确定的来源。

找出可能引发异常的唯一方法是查看文档。 int()文档未说明可能会引发ValueError的事实是文档中的错误,但可以很容易地通过ValueError正是出于此目的以及"每个人都知道"的原因来解释。

不过,要弄清这一点,文档是唯一的方法,它可以告诉我们应该关注哪些异常。实际上,任何函数都可能引发任何异常,即使仅仅是因为信号可能到达而信号处理程序可能引发异常也是如此。但是,我们不应预期或者处理这些错误;我们应该只处理我们期望的错误。