无法通过不合理的pep8错误
我已经尝试了很久想要解决这个问题,但就是无法通过pep8的检查。以下是我的代码:
1.
if (len(regex) > 2 and regex[0] == '(' and regex[-1] == ')' and
sum(regex.count(char) for char in splitter) == 1 and
regex.count('(') == 1 and regex.count(')') == 1):
print('hi')
if (len(regex) > 2 and regex[0] == '(' and regex[-1] == ')' and
sum(regex.count(char) for char in splitter) == 1 and
regex.count('(') == 1 and regex.count(')') == 1):
print('hi')
if (len(regex) > 2 and regex[0] == '(' and regex[-1] == ')'
and regex.count('(') > 1):
print('hi')
我在每个3个if
语句上都收到了PEP8的错误提示:
E125 continuation line does not distinguish itself from next logical line
你知道哪里出问题了吗?这些行是用括号缩进的,所以我真的不知道该怎么解决。
3 个回答
-1
我并不是说我特别喜欢这个解决方案,但我觉得把if
后面的空格去掉,比起把第二行和len
调用的内容对齐,妥协的程度要小一些,就像这里其他答案所建议的那样:
if(len(regex) > 2 and regex[0] == '(' and regex[-1] == ')' and
sum(regex.count(char) for char in splitter) == 1 and
regex.count('(') == 1 and regex.count(')') == 1):
print('hi')
2
我正在使用PyCharm(这个工具在指出PEP8错误方面非常不错)来进行编辑,它说这个版本是可以的:
if (len(regex) > 2 and regex[0] == '(' and regex[-1] == ')' and
sum(regex.count(char) for char in splitter) == 1 and
regex.count('(') == 1 and regex.count(')') == 1):
print('hi')
28
1.
if (len(regex) > 2 and regex[0] == '(' and regex[-1] == ')' and
sum(regex.count(char) for char in splitter) == 1 and
regex.count('(') == 1 and regex.count(')') == 1):
print('hi')
2.
if (len(regex) > 2 and regex[0] == '(' and regex[-1] == ')' and
sum(regex.count(char) for char in splitter) == 1 and
regex.count('(') == 1 and regex.count(')') == 1):
print('hi')
3.
if (len(regex) > 2 and regex[0] == '(' and regex[-1] == ')'
and regex.count('(') > 1):
print('hi')