Py3K idea: why not drop the colon?
Steven D'Aprano
steve at REMOVE.THIS.cybersource.com.au
Sat Nov 11 08:39:44 EST 2006
On Sat, 11 Nov 2006 01:13:03 -0600, Ron Adam wrote:
> Steven D'Aprano wrote:
>> On Fri, 10 Nov 2006 21:24:50 +0100, Bjoern Schliessmann wrote:
>>
>>> Marc 'BlackJack' Rintsch wrote:
>>>
>>>> No it doesn't -- look again at the example given above. It's
>>>> legal syntax in Python but doesn't have the semantics implied by
>>>> the example.
>>> Sorry, I don't understand -- what is the difference between the
>>> example as it is and the implied semantics of it?
>>
>> Inform 6 "x == blue or red or yellow" is equivalent to the Python
>>
>> x == blue or x == red or x == yellow
>
> Maybe it should have been expressed as:
>
> x == (blue or red or yellow)
But that has very different semantics still -- since parentheses have the
highest priority, it means "evaluate (blue or red or yellow), then test if
x is equal to the result".
It might be useful on occasion to have a construct for "x equals blue or
red or yellow" in the sense used by normal English or Inform 6. And,
funnily enough, Python has such a construct. You just have to write "in"
instead of ==, and use a tuple for the terms:
x in (blue, red, yellow)
Not hard to remember, and unambiguous.
--
Steven.
More information about the Python-list
mailing list