W504 二元运算符后换行

Ham*_*med 6 python pep8 flake8

我有一个条件,如下所示:

ok = (not a > 10 and
      not b < 10 and
      not c > 99 and
      d == 99)
Run Code Online (Sandbox Code Playgroud)

flake8 抱怨这一行并显示错误消息:

W504 二元运算符后换行

当我移动操作员时,它会抛出不同的错误:

ok = (not a > 10
      and not b < 10
      and not c > 99
      and d == 99)
Run Code Online (Sandbox Code Playgroud)

W503 二元运算符前换行

我尝试了多个建议(例如,this),但 flake8 仍然抱怨换行。我的代码中的实际情况非常长,因此我无法将其放在一行中,而且我的团队更喜欢将长行括起来()而不是使用\.

Ant*_*ile 15

你已经ignore =在你的配置中设置了——你应该使用extend-ignore =

W504并且W503相互冲突(默认情况下都被禁用)——通过设置ignore您可以重新启用它们。 extend-ignore不存在此问题,因为它增加了默认的忽略代码集


免责声明:我是当前 flake8 的维护者