获取pylint(或其他工具)以捕获重叠的异常

时间:2016-10-12 09:27:16

标签: python pylint flake8 pyflakes

我还没有找到任何方法来获取pylint(或其他代码分析工具)来捕获重叠/冗余异常被捕获的情况,如下例所示:

"""doc"""
import socket
try:
    pass
except (ConnectionError, IOError, OSError, socket.error):
    # ConnectionError inherits from OSError
    # socket.error and IOError are aliases for OSError
    pass

在这里,我想得到一个关于ConnectionError,IOError和socket.error的投诉已经被except子句中的OSError所涵盖。

In [1]: import socket

In [2]: OSError
Out[2]: builtins.OSError

In [3]: socket.error
Out[3]: builtins.OSError

In [4]: IOError
Out[4]: builtins.OSError

In [5]: ConnectionError, ConnectionError.__bases__
Out[5]: (builtins.ConnectionError, (builtins.OSError,))

这是否存在? 如果没有,这会是一个好/坏的想法吗?

1 个答案:

答案 0 :(得分:0)

现在在这里实施: Overlap-except-checker