python syntax for conditional is unfortunate
cs at zip.com.au
Wed Sep 24 02:24:54 CEST 2008
On 23Sep2008 19:52, Neal Becker <ndbecker2 at gmail.com> wrote:
| In hindsight, I am disappointed with the choice of conditional syntax.
| I know it's too late to change. The problem is
| y = some thing or other if x else something_else
| When scanning this my eye tends to see the first phrase and only
| later notice that it's conditioned on x (or maybe not notice at all!).
| Particularly if 'some thing or other' is long or complicated.
Personally, I think this is deliberate (the wordiness and ordering, not the
reading difficulty). Plenty of people dislike C's ternary b?x:y operator,
presumably for the same reasons.
A good coder will present things clearly. For trivial stuff the one line
form may be fine, and for longer stuff then this:
y = some thing or other \
if x \
y = something or other
y = something_else
should appear. If it's your code, this is up to you. If it's another's,
well anyone can write unreadable code...
Cameron Simpson <cs at zip.com.au> DoD#743
Principles have no real force except when one is well fed. - Mark Twain
More information about the Python-list