Python statements not forcing whitespace is messy?

J. Cliff Dyer jcd at sdf.lonestar.org
Sat Sep 15 16:11:26 EDT 2007


buffi wrote:
> Am I the only one that thinks that python statements should force
> whitespace before and after them?
>
> Right now this is not enforced and for an example these statements are
> valid
>
> print"hello"
> "foo"if"bar"else"foobar"
> for(x,y)in[(1,2),(3,4)]:print(x,y)
> [(y)for(x,y)in[("foo",2),("bar",4)]if"foo"in(x)]
>
> ...and so on.
>

On the other hand, this is just as bad:

[ ( y ) for ( x , y ) in [ ( "foo" , 2 ) , ( "bar" , 4 ) ] if "foo" in (
x ) ]


And I'd hate to have to remember all of the rules for what can go
together and what can't, especially when it comes time to debug.  No.
I don't think it should be forced, but maybe put it in PEP8 or PEP3008.

Also, the only thing I find thoroughly disagreeable in all of that
mess, is the run-ins involving " characters.  The rest are at least
clear at a glance what belongs where.

Also, would you require the following?

my_function (swallow='European')

Because that is just an awful use of whitespace.

Cheers,
Cliff






More information about the Python-list mailing list