Re: [Info] PEP 308 accepted - new conditional expressions
Available news archives: comp.lang.tcl - comp.lang.python - comp.security.firewalls - sci.crypt - comp.lang.php - comp.lang.javascript
Google
 
Web news.hping.org


comp.lang.python archive

Re: [Info] PEP 308 accepted - new conditional expressions

From: Rocco Moretti <roccomoretti@hotpop.com>
Date: Fri Sep 30 2005 - 20:53:41 CEST

Reinhold Birkenfeld wrote:
> Hi,
>
> after Guido's pronouncement yesterday, in one of the next versions of Python
> there will be a conditional expression with the following syntax:
>
> X if C else Y

Any word on chaining?

That is, what would happen with the following constructs:

A if B else C if D else F
A if B if C else D else F

The first one is the tricky bit - it could be either

(A if B else C) if D else F
or
A if B else (C if D else F)

I'd expect the former from left-> right semantics, but reading the
unparenthesized form, I'd see "A if B else ..." note that B is true, and
conclude the expression evaluated to A (which would be wrong if D is false).
Received on Sat Oct 15 04:00:58 2005