For review: PEP 308 - If-then-else expression
William
wilk-spamout at flibuste.net
Fri Feb 7 16:44:46 EST 2003
More information about the Python-list mailing list
Fri Feb 7 16:44:46 EST 2003
- Previous message (by thread): For review: PEP 308 - If-then-else expression
- Next message (by thread): For review: PEP 308 - If-then-else expression
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
What about a = exp if cond could it be like a = exp if cond else None anyway, +1, i'm agree with Dan Schmidt <dfan at dfan.org> writes: > I am so keen on having a ternary operator in Python that I would > probably vote yes on any proposal that was made. > > I dislike > > if test: > x = a > else: > x = b > > not because it is longer than > > x = a if test else b > > but because I think the intent of the code is much more clear if one > says "x is the result of this computation depending on test" than if > one says "if test is true, evaluate this body of code, otherwise > evaluate this other body, and by the way they both happen to assign a > value to x." My appreciation for the former comes partly from using > languages like Lisp, where there is no distinction between statements > and expressions, and partly from using functional languages, where > you really do have to decide what x is going to be all in one fell > swoop. I find that putting the logic for computing x in one place > leads to fewer errors (for one thing, you don't have to type 'x' > twice). > > OK, so I would probably vote 'yes' on almost any proposal, but seriously, > this one seems fine to me. The order of operands seemed weird at first, > but I kind of like the fact that when you're reading the code, "a if > test else b" reads like a noun, because the first thing you encounter > is 'a' rather than the test. That is much more 'Englishy' to me than > encountering the condition first. > > I don't worry so much about the way this can be abused by putting in > the middle of other expressions as in Guido's examples. There are > plenty of language constructs that you can abuse if you try hard > enough, even in Python. > > Dan > > -- > http://www.dfan.org -- William Dode - http://flibuste.net
- Previous message (by thread): For review: PEP 308 - If-then-else expression
- Next message (by thread): For review: PEP 308 - If-then-else expression
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-list mailing list