我的「和」是一個looong語句,例如:如何縮短「和」陳述?
if this == that and this == that and this == that:
do this
如何正確地打破這種語句被分成幾行,以符合PEP-8?
我的「和」是一個looong語句,例如:如何縮短「和」陳述?
if this == that and this == that and this == that:
do this
如何正確地打破這種語句被分成幾行,以符合PEP-8?
可以在Python的不同線路,而是將它們標記爲相同的「語義」行,通過插入反斜線:
if this == that \
and this == that \
and this == that:
do this
即使你有and
的或or
的在這做你的複雜的條件表達。 希望這有助於。
如果你必須這樣做,那麼使用'(...)'括號,並完全避免反斜槓。 'if(this == that and this == that that and \ n this == that):' –
-1問題是要求符合PEP-8,而PEP-8推薦符合要求 – jamylak
纏繞長行的優選方式是通過使用括號內,括號和大括號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))
通常通過避免它們;有很多'和'語句的代碼通常可以被重構爲更可讀的。 –
檢查這個帖子http://stackoverflow.com/questions/181530/python-style-multiple-line-conditions-in-ifs – frank1fr
使用'所有'的幫助,略.. – wim