On 23/01/2013 15:35, Jussi Piitulainen wrote:
Thomas Boell writes:

Using a keyword that has a well-understood meaning in just about
every other programming language on the planet *and even in
English*, redefining it to mean something completely different, and
then making the syntax look like the original, well-understood
meaning -- that's setting a trap out for users.

The feature isn't bad, it's just very, very badly named.

I believe it would read better - much better - if it was "for/then"
and "while/then" instead of "for/else" and "while/else".

I believe someone didn't want to introduce a new keyword for this,
hence "else".


There is a scenario, which I use from time to time, where 'else' makes perfect sense.

You want to loop through an iterable, looking for 'something'. If you find it, you want to do something and break. If you do not find it, you want to do something else.

for item in iterable:
    if item == 'something':
        do_something()
        break
else:  # item was not found
    do_something_else()

Not arguing for or against, just saying it is difficult to find one word which covers all requirements.

Frank Millman


--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to