我经常会写一个通用的异常,比如:
class MyException(Exception):
"My custom exception."
pass
通过这种方式,我可以检查该异常是否是我想要的try/except
块中的异常。然而pylint
对此抱怨如下:
不必要的pass:不必要的传递语句
此投诉背后的理由是什么?还有什么更可取的方法可以做到这一点吗?甚至python文档也建议对用户定义的异常使用类似的东西:
class Error(Exception):
"""Base class for exceptions in this module."""
pass
基本原理是字符串文本是类主体中的有效Python语句,因此不需要pass
来显示缩进。
这是一个风格问题,所以如何解决这个问题还没有明确的答案。如果您觉得pass
很有用,我建议禁用Pyint中的警告。