上記のコードでPEP8警告を再現することもできませんでした。おそらく、正確なコードをペーストビンに入れることができますか?次のようにPEP8ため
例のテストケースは、(あなたは--show-pep8オプションを使用している場合)、次のとおりです。
Avoid extraneous whitespace in the following situations:
- Immediately inside parentheses, brackets or braces.
- Immediately before a comma, semicolon, or colon.
Okay: spam(ham[1], {eggs: 2})
E201: spam(ham[1], {eggs: 2})
E201: spam(ham[ 1], {eggs: 2})
E201: spam(ham[1], { eggs: 2})
E202: spam(ham[1], {eggs: 2})
E202: spam(ham[1 ], {eggs: 2})
E202: spam(ham[1], {eggs: 2 })
E203: if x == 4: print x, y; x, y = y , x
E203: if x == 4: print x, y ; x, y = y, x
E203: if x == 4 : print x, y; x, y = y, x
はまた、私は実際にTextMateのを使用していないが、あなたは上のやっている場合emacsのフライメイクモードに似たフライチェックを実行すると、古いバージョンのpep8が呼び出されている可能性もあり、ファイルを保存すると問題が解決する可能性があります。デバッグにはさらに情報が必要な場合があります。
リストの理解そのもののフォーマットについては、this other SO questionとthe take from the Google style guideを参照してください。私は個人的にあなたがそれをやったやり方には何の問題もありません。
def _question_tuple(q):
return (
q,
q.vote_set.filter(choice__exact='Y'),
q.vote_set.filter(choice__exact='N'),
request.session.get(str(q.id))
)
question_tups = [_question_tuple(q) for q in questions]
などがありますが、実際には最も読みやすく保守性の高いものがあります。それは自分の判断に委ねられています。
コードをチェックするためにどのツールを使用していますか?パイリント? – monkut
pep8 textmate bundle – jondavidjohn
pep8に興味があるなら 'choice__exact'を' choice_exact'にする必要があります。ところで、私は、複数行のリスト内包表記についてはあまり気にしません。ただ読めるようにしてください。 – JBernardo