Python 如何编写代码以避免pep8 W502和E504问题
我找不到一个很好的方法来绕过pep8 E502和W504 我有这样的代码Python 如何编写代码以避免pep8 W502和E504问题,python,pep8,Python,Pep8,我找不到一个很好的方法来绕过pep8 E502和W504 我有这样的代码 if(foo(a,b)或 foo1(c,d)或 foo2(e,f))和 foo3(g,h): 如果我这样写,就会有人抱怨我违反了“W504二进制运算符后的换行符” 但是,如果我在二进制运算符后添加换行符,则会收到投诉,说我违反了“E502括号之间的反斜杠是多余的” 如果我不能将它们编成一行,我应该如何编写代码?您应该“编写”代码 在下一行的开头使用二进制运算符 就连PEP-8在这一点上也有些动摇;它建议新代码的运算符前中
if(foo(a,b)或
foo1(c,d)或
foo2(e,f))和
foo3(g,h):
如果我这样写,就会有人抱怨我违反了“W504二进制运算符后的换行符”
但是,如果我在二进制运算符后添加换行符,则会收到投诉,说我违反了“E502括号之间的反斜杠是多余的”
如果我不能将它们编成一行,我应该如何编写代码?您应该“编写”代码
在下一行的开头使用二进制运算符
就连PEP-8在这一点上也有些动摇;它建议新代码的运算符前中断,但只要在整个文件中保持一致,就接受运算符后中断
(我更喜欢运算符后换行符。对我来说,它更强烈地表明表达式将继续到下一行。因此,我只会使用--ignore W504
)
if (foo(a, b)
or foo1(c, d)
or foo2(e, f)
and foo3(g, h)):