What is PEP8's E128: continuation line under-indented for visual indent?
刚刚用Sublime Text(Sublime Linter)打开一个文件,发现了一个我以前从未见过的PEP8格式错误。 这是文字:
1 2 3 | urlpatterns = patterns('', url(r'^$', listing, name='investment-listing'), ) |
它标记了第二个参数,即以
我准备在ST2中禁用这个检查,但是我想知道在我忽略它之前我做错了什么。 你永远不知道,如果看起来重要我甚至可能改变我的方式:)
如果您在第一行放置任何内容,PEP-8建议您将行缩进到左括号,因此它应该缩进到左括号:
1 2 | urlpatterns = patterns('', url(r'^$', listing, name='investment-listing')) |
或者不在起始行上放置任何参数,然后缩进到统一级别:
1 2 3 4 5 6 7 | urlpatterns = patterns( '', url(r'^$', listing, name='investment-listing'), ) urlpatterns = patterns( '', url(r'^$', listing, name='investment-listing')) |
我建议读一下PEP-8 - 它不是一个很长的文档,而且它很容易理解,不像一些技术性更强的PEP。
这也适用于这样的语句(由PyCharm自动格式化):
1 2 3 | return combine_sample_generators(sample_generators['train']), \ combine_sample_generators(sample_generators['dev']), \ combine_sample_generators(sample_generators['test']) |
哪个会给出相同的风格警告。 为了摆脱它,我不得不重写它:
1 2 3 4 | return \ combine_sample_generators(sample_generators['train']), \ combine_sample_generators(sample_generators['dev']), \ combine_sample_generators(sample_generators['test']) |