[Python-Dev] Suggested addition to PEP 8 for context managers (original) (raw)

Guido van Rossum guido at python.org
Wed Apr 18 19:38:41 CEST 2012


On Wed, Apr 18, 2012 at 9:25 AM, Georg Brandl <g.brandl at gmx.net> wrote:

On 18.04.2012 17:47, Chris Angelico wrote:

On Thu, Apr 19, 2012 at 12:47 AM, Guido van Rossum<guido at python.org>  wrote:

 I don't believe PEP 8 requires whitespace around all binary operators.  Where do you read that? Quoting from http://www.python.org/dev/peps/pep-0008/#other-recommendations (with elision): Use spaces around arithmetic operators:  No: i=i+1 submitted +=1 x = x*2 - 1 hypot2 = xx + yy c = (a+b) * (a-b) End quote. I agree that this could be reworded.  Especially when the operands are as short as in the examples, the last three "No"s read better to me than the "Yes" entries.  In this case, spacing serves for visually grouping expressions by precedence, which otherwise could also be indicated by (semantically unnecessary) parens.

Indeed. I don't know who put that in, it wasn't me.

But in all cases discussed here, PEP8 should not be seen as a law. Its second section ("A Foolish Consistency is the Hobgoblin of Little Minds") is quite prominent for a reason.

I think whoever put that blanket rule in the PEP fell prey to this.

Let's change this to something more reasonable, e.g.

""" If operators with different priorities are used, consider adding whitespace around the operators with the lowest priority(ies). This is very much to taste, however, never use more than one space, and always have the same amount of whitespace on both sides of a binary operator. """

-- --Guido van Rossum (python.org/~guido)



More information about the Python-Dev mailing list