flake8 - 忽略函数的警告

新手上路,请多包涵

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

 class Klass():

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

这是我从 flake8 收到的消息的示例:

 src/test/_resource.py:147:5: C901 'Resource.render' is too complex (22)
    def render(self, request):  # noqa: C901
    ^

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

原文由 notorious.no 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 971
1 个回答

来自 mccabe 的文档(由 flake8 使用):

mccabe 报告的违规行为,请将 # noqa: C901 放在报告错误的函数定义行上(可能是装饰器)。

因此,您应该将 # noqa 注释放在包含 def 的行或带有装饰器的行。

原文由 Eugene Yarmash 发布,翻译遵循 CC BY-SA 4.0 许可协议

推荐问题