编码样式 - 将括号保留在同一行还是新行?

Art*_*Art 6 python formatting coding-style readability

假设你正在调用一个函数,为了便于阅读,显然需要将语句分解为几行.但是至少有两种方法可以做到:

你会这样做:

return render(request, template,
              {
                'var1' : value1,
                'var2' : value2,
                'var3' : value3
               }
             )
Run Code Online (Sandbox Code Playgroud)

或者你愿意这样做:

return render \
(
    request, template,
    {
        'var1' : value1,
        'var2' : value2,
        'var3' : value3
    }
)
Run Code Online (Sandbox Code Playgroud)

或者,请建议您自己的格式.还请列出为什么要使用特定格式以及另一个格式有什么问题的原因.

谢谢

Col*_*ant 9

Python的官方PEP-8表明第一个.


Dou*_*der 9

我可能会这样做:

return render(
    request, 
    template,
    {
        'var1' : value1,
        'var2' : value2,
        'var3' : value3
    }
)
Run Code Online (Sandbox Code Playgroud)

我会将括号保持在同一行,以便搜索render(工作.因为我觉得它更清楚.但我会把所有的论点都放在新的界限上.


Zac*_*sch 8

我会做:

vars = {
    'var1' : value1,
    'var2' : value2,
    'var3' : value3,
}
return render(request, template, vars)
Run Code Online (Sandbox Code Playgroud)

  • +1只是因为你*可以*在一个声明中完成所有操作并不意味着你*应该*. (3认同)