Proposed PEP for a Conditional Expression
Greg Ewing
greg at cosc.canterbury.ac.nz
Wed Sep 12 20:47:53 EDT 2001
Bernhard Herzog <bh at intevation.de> wrote:
> <expr> if <cond> else <expr>
I find myself liking this. To me,
x = a if something else b
reads much more smoothly than
x = if something then a else b
Rainer Deyke wrote:
>
> However, it would not fit well with list comprehensions that have a 'for':
>
> [<expr> if <cond> for i in range(5)] # Syntax error
> [<expr> for i in range(5) if <cond> else <expr>] # Syntax error
> # and ambiguous intent
This can be remedied: give the conditional expression
a precedence lower than any existing operator (which I
think is a good idea anyway), and exclude this level of
precedence from the iterated-over expression of a for loop.
"Terry Reedy" <tjreedy at home.com>:
> I agree that the above is backwards.
> <cond> if <expr> else <expr>
No! That sounds way too much like Forth!
--
Greg Ewing, Computer Science Dept, University of Canterbury,
Christchurch, New Zealand
To get my email address, please visit my web page:
http://www.cosc.canterbury.ac.nz/~greg
More information about the Python-list
mailing list