An interesting beginner question: why we need colon at all in the python language?

Anthony Kong anthony.hw.kong at
Mon Jul 11 16:23:43 CEST 2011

Awesome! Thanks for blog post link


On Tue, Jul 12, 2011 at 12:16 AM, Thomas Jollans <t at> wrote:

> On 07/11/2011 03:51 PM, Anthony Kong wrote:
> > Hi, all,
> >
> > Lately I am giving some presentations to my colleagues about the python
> > language. A new internal project is coming up which will require the use
> > of python.
> >
> > One of my colleague asked an interesting:
> >
> > /If Python use indentation to denote scope, why it still needs
> > semi-colon at the end of function declaration and for/while/if loop?/
> >
> > My immediate response is: it allows us to fit statements into one line.
> > e.g. if a == 1: print a
> >
> > However I do not find it to be a particularly strong argument. I think
> > PEP8 does not recommend this kind of coding style anyway, so one-liner
> > should not be used in the first place!
> Basically, it looks better, and is more readable. A colon, in English
> like in Python, means that something follows that is related to what was
> before the colon. So the colon makes it abundantly clear to the human
> reader that a block follows, and that that block is to be considered in
> relation to what was just said, before the colon.
> Coincidentally, Guido wrote this blog post just last week, without which
> I'd be just as much at a loss as you:
> --

Don’t EVER make the mistake that you can design something better than what
you get from ruthless massively parallel trial-and-error with a feedback
cycle. That’s giving your intelligence _much_ too much credit.

- Linus Torvalds
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the Python-list mailing list