代码之家  ›  专栏  ›  技术社区  ›  Art

编码方式-将括号放在同一行还是新行?[关闭]

  •  6
  • Art  · 技术社区  · 16 年前

    假设您正在调用一个函数,为了可读性,显然需要将语句分解成几行。然而,至少有两种方法可以做到这一点:

    你会这样做吗:

    return render(request, template,
                  {
                    'var1' : value1,
                    'var2' : value2,
                    'var3' : value3
                   }
                 )
    

    或者你愿意这样做:

    return render \
    (
        request, template,
        {
            'var1' : value1,
            'var2' : value2,
            'var3' : value3
        }
    )
    

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

    谢谢

    4 回复  |  直到 16 年前
        1
  •  8
  •   Douglas Leeder    16 年前

    我可能会:

    return render(
        request, 
        template,
        {
            'var1' : value1,
            'var2' : value2,
            'var3' : value3
        }
    )
    

    我会把括号放在同一行,以便搜索 render( 工作。因为我觉得它更清晰。但我会把所有的论点都写在新的行上。

        2
  •  9
  •   Colin Valliant    16 年前

    蟒蛇官方 PEP-8 第一个建议。

        3
  •  8
  •   Zach Hirsch    16 年前

    我会这样做:

    vars = {
        'var1' : value1,
        'var2' : value2,
        'var3' : value3,
    }
    return render(request, template, vars)
    
        4
  •  2
  •   John Machin Santi    16 年前

    第二个看起来像是从一个c[\++]*程序中转义出来的。反斜杠行的连续性很难看,很容易出现尾随空格的问题,当您要使用()或[]时,没有理由使用它。