Jos*_*eph 18 python formatting coding-style pep8
我将此声明作为几行:
return render_to_response('foo/page.html',
{
'situations': situations,
'active': active_req,
},
context_instance=RequestContext(request))
Run Code Online (Sandbox Code Playgroud)
按照现在的情况,使用PEP8脚本,它在第二行给出了一个"E128:延迟线下缩进视觉缩进"错误.
我尝试了一大堆不同的格式化方法,而且我能让PEP8停止抱怨的唯一方法是:
return render_to_response('foo/page.html', {
'situations': situations,
'active': active_req,
},
context_instance=RequestContext(request))
Run Code Online (Sandbox Code Playgroud)
但这看起来像垃圾.
建议?E124,E126和E128似乎是一个巨大的痛苦!
我不介意具有{
第一行(或它自己)的解决方案,但我希望有一个解决方案,其中},
和context_instance...
处于相同的缩进级别.
aba*_*ert 21
问题是所有参数都应该缩进到同一级别.这包括初始函数调用行上的任何参数.
所以,虽然你可以像这样解决它:
return render_to_response('foo/page.html',
{
'situations': situations,
'active': active_req,
},
context_instance=RequestContext(request))
Run Code Online (Sandbox Code Playgroud)
......通常只会让你违反80栏规则,即使pep8
不抱怨也一定会使你的代码变得更加丑陋.你可能想要的是这个:
return render_to_response(
'foo/page.html',
{
'situations': situations,
'active': active_req,
},
context_instance=RequestContext(request))
Run Code Online (Sandbox Code Playgroud)
或者,当然,你可以打破你的巨大表达:
d = {
'situations': situations,
'active': active_req,
}
context = RequestContext(request)
return render_to_response('foo/page.html', d, context_instance=context)
Run Code Online (Sandbox Code Playgroud)