[Python-Dev] What is the ":" for in python?
Michael Chermside
mcherm at mcherm.com
Fri Feb 27 14:54:58 EST 2004
> I was asked why python required a ":" in its syntax and then saw
> Pete Shinners query on changing the parser to treat "def" to ":" as a unit.
>
> What is the purpose of the ":"?
>
> Why doesn't the parser work as Pete suggests already?
> Of course the same rules should be true of "if" and ":", "while" and ":"
If I recall correctly, the original reason for the ":" is that the designers
of ABC (which provided much of the original inspiration for Python)
conducted a study and found that people recognized block boundaries
better if they were introduced by a ":" in addition to being indentation
delimited then if they were just indentation delimited.
For more details see this posting of Tim's:
http://mail.python.org/pipermail/python-list/2000-December/022506.html
> if x > 10
> and x < 20:
> do_in_range()
>
> rather then
>
> if( x > 10
> and x < 20 ):
> do_in_range()
Interesting. Everyone has their own preferences, but I find BOTH
of these very difficult to read. I would prefer
if (x > 10
and x < 20):
do_in_range()
Of course
if (10 < x < 20):
do_in_range()
is even better <wink>.
-- Michael Chermside
More information about the Python-Dev
mailing list