PEP 308 - suggestion for generalising the ternary operator
Oren Tirosh
oren-py-l at hishome.net
Wed Feb 12 09:31:11 EST 2003
On Wed, Feb 12, 2003 at 02:53:42AM -0800, damien morton wrote:
> One Python implimentation of the ternary operator expresses the
> problem as selecting from a list of alternatives:
> [tval,fval][not cond]
>
> I was thinking over how to generalise this into a more powerfull and
> readable form and came up with this syntax:
>
> (cond1?value1, cond2?value2, cond3?value3, default_value)
>
> whose degenerate ternary operator form is:
>
> (cond? true_value, false_value)
>
> I think the parentheses should be mandatory.
Hmm... If you replace ? with : the result looks surprisingly like
a dictionary, with parens instead of curly braces:
(cond:value, cond:value, cond:value, cond:value, default_value)
Or maybe:
(cond:value, cond:value, cond:value, cond:value, else:default_value)
Oren
More information about the Python-list
mailing list