# python styles: why Use spaces around arithmetic operators?

Discussion in 'Python' started by Peng Yu, Jul 26, 2010.

1. ### Peng YuGuest

This webpage http://www.python.org/dev/peps/pep-0008/ recommends the
following. It looks to me that both styles are fine. Could anybody let
me know what the rationale is behind this recommendation?

- Use spaces around arithmetic operators:

Yes:

i = i + 1
submitted += 1
x = x * 2 - 1
hypot2 = x * x + y * y
c = (a + b) * (a - b)

No:

i=i+1
submitted +=1
x = x*2 - 1
hypot2 = x*x + y*y
c = (a+b) * (a-b)

--
Regards,
Peng

Peng Yu, Jul 26, 2010

2. ### rantingrickGuest

On Jul 26, 5:20 pm, Peng Yu <> wrote:
> This webpagehttp://www.python.org/dev/peps/pep-0008/recommends the
> following. It looks to me that both styles are fine. Could anybody let
> me know what the rationale is behind this recommendation?

The rational is simple. Guido is God and if you don't follow his words
then you will be tortured. His favorite means is by forcing you to
wear Dutch wooden shoes every day whist programming Ruby! ;-)

rantingrick, Jul 27, 2010

3. ### Martin P. HellwigGuest

On 07/27/10 00:06, rantingrick wrote:
> On Jul 26, 5:20 pm, Peng Yu<> wrote:
>> This webpagehttp://www.python.org/dev/peps/pep-0008/recommends the
>> following. It looks to me that both styles are fine. Could anybody let
>> me know what the rationale is behind this recommendation?

>
> The rational is simple. Guido is God and if you don't follow his words
> then you will be tortured. His favorite means is by forcing you to
> wear Dutch wooden shoes every day whist programming Ruby! ;-)

Wat is er mis met klompen?

--
mph

Martin P. Hellwig, Jul 27, 2010
4. ### rantingrickGuest

> Martin wrote:
>
> Wat is er mis met klompen?

Well specifically their made from wood and wood is a very hard
substance. Also i did not go into detail but he makes sure to pick
shoes that are three sizes too small. You know a good podiatrist can
be tough to come by in these times. It's a pretty severe punishment if

rantingrick, Jul 27, 2010
5. ### Steven D'ApranoGuest

On Mon, 26 Jul 2010 17:20:09 -0500, Peng Yu wrote:

> This webpage http://www.python.org/dev/peps/pep-0008/ recommends the
> following. It looks to me that both styles are fine. Could anybody let
> me know what the rationale is behind this recommendation?
>
> - Use spaces around arithmetic operators:

Because it looks better and is easier to read. Operators are small
(single characters) and sometimes need space around them to stand out.

> i=i+1

See? It's hideously ugly and cramped. It's much worse if you use larger
names:

sensiblynamedvariable=sensiblynamedvariable+1

But use your common sense. I usually group powers, multiplications and
divisions, and separate additions and subtractions:

y = 2*x + 1 - (3*x - 4/(2 + x**2))**-2

And unary + and - operators should always be grouped with their operand:

y = -2 # not "- 2"

--
Steven

Steven D'Aprano, Jul 27, 2010
6. ### geremy condraGuest

On Mon, Jul 26, 2010 at 4:31 PM, Steven D'Aprano
<> wrote:
> On Mon, 26 Jul 2010 17:20:09 -0500, Peng Yu wrote:
>
>> This webpage http://www.python.org/dev/peps/pep-0008/ recommends the
>> following. It looks to me that both styles are fine. Could anybody let
>> me know what the rationale is behind this recommendation?
>>
>>     - Use spaces around arithmetic operators:

>
> Because it looks better and is easier to read. Operators are small
> (single characters) and sometimes need space around them to stand out.
>
>>           i=i+1

>
> See? It's hideously ugly and cramped. It's much worse if you use larger
> names:
>
> sensiblynamedvariable=sensiblynamedvariable+1
>
> But use your common sense. I usually group powers, multiplications and
> divisions, and separate additions and subtractions:
>
> y = 2*x + 1 - (3*x - 4/(2 + x**2))**-2
>
> And unary + and - operators should always be grouped with their operand:
>
> y = -2  # not "- 2"

This is the rule that I use, with the exception that I will generally
explicitly parenthesize the numerator in a division, since my eyes
frequently gloss over the / symbol for some reason.

Geremy Condra

geremy condra, Jul 27, 2010