On May 27, 1:57 pm, Jean-Michel Pichavant <jeanmic...@sequans.com> wrote: > HH wrote: > > I have a question about best practices when it comes to line wrapping/ > > continuation and indentation, specifically in the case of an if > > statement. > > > When I write an if statement with many conditions, I prefer to use a > > parenthesis around the whole block and get the implicit continuation, > > rather than ending each line with an escape character. Thus, using > > the example from the style guide (http://www.python.org/dev/peps/ > > pep-0008/) I would write: > > > if (width == 0 and > > height == 0 and > > color == 'red' and > > emphasis == 'strong' or > > highlight > 100): > > raise ValueError("sorry, you lose") > > > The problem should be obvious -- it's not easy to see where the > > conditional ends and the statement begins since they have the same > > indentation. Part of the problem, I suppose, is that Emacs indents > > 'height' and the other lines in the conditional to 4 spaces (because > > of the parenthesis). How do people deal with this situation? > > > Thanks, > > Henrik > > One possible solution > > if ( > width == 0 and > height == 0 and > color == 'red' and > emphasis == 'strong' or > highlight > 100 > ): > raise ValueError("sorry, you lose") > > JM
I've always liked this, or even: if ( width == 0 and height == 0 and color == 'red' and emphasis == 'strong' or highlight > 100 ): raise ValueError("sorry, you lose") but my co-workers have uniformly gone bananas whenever I try it. -- http://mail.python.org/mailman/listinfo/python-list