如何缩短长期“和”陈述?

时间:2013-05-30 07:56:32

标签: python python-2.7 coding-style pep8

我有一个“和”的looong声明,例如:

if this == that and this == that and this == that:
    do this

如何正确地将这些陈述分成不同的行,以符合PEP-8?

2 个答案:

答案 0 :(得分:2)

PEP8 gives a recommendation

  

包装长行的首选方法是使用Python的暗示   括号,括号和括号内的行继续。排长龙   可以通过包装表达式来分解多行   括弧。这些应该优先使用反斜杠   换行。确保缩进续行   适当。打破二元运算符的首选位置   是在经营者之后,而不是在经营者之前。

和示例:

if (width == 0 and height == 0 and
    color == 'red' and emphasis == 'strong' or
    highlight > 100):
    raise ValueError("sorry, you lose")
if width == 0 and height == 0 and (color == 'red' or
                                   emphasis is None):
    raise ValueError("I don't think so -- values are %s, %s" %
                     (width, height))

答案 1 :(得分:0)

你可以在Python中分隔行,但是通过插入反斜杠将它们标记为相同的“语义”行:

if     this == that \
   and this == that \
   and this == that:
    do this

即使您的复杂条件表达式中包含andor,也会这样做。 希望这会有所帮助。