我试图忽略一个函数的警告C901 too complex我尝试了几乎所有可以看到的# noqa: C901排列,但仍然出现了错误。我认为函数(方法?)够了。我甚至尝试将注释放在# noqa声明的同一行,如下所示:

class Klass():

    def my_complex_method(self):  # noqa: C901
        """
        lots of if's and return's
        """

下面是我从def收到的消息的示例:
src/test/_resource.py:147:5: C901 'Resource.render' is too complex (22)
    def render(self, request):  # noqa: C901
    ^

快速搜索只会产生如何全局忽略或整个文件忽略的结果这不是我想要的,因为如果文件太复杂的话,我确实想捕获文件中的其他函数。有人知道我怎么解决我的问题吗?

最佳答案

mccabe上的文档(由flake8在引擎盖下使用):
若要消除mccabe报告的违规行为,请将您的# noqa: C901
在函数定义行上,报告错误
(可能是装修工)。
所以您应该将# noqa注释放在包含def的行上,或者放在带有decorator的行上。

关于python - flake8-忽略功能警告,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51127170/

10-13 05:18