Yes, you're right. That's the ambiguity I mentioned in my last message.
It's too bad because I want given for expressions and given for
comprehensions. But if you have both, there's ambiguity and you would at
least need parentheses:

[(y given y=2*x) for x in range(3)]

That might be fine.

On Thu, May 31, 2018 at 4:34 AM Peter O'Connor <peter.ed.ocon...@gmail.com>
wrote:

> * Sorry, message sent too early:
>
> On Thu, May 31, 2018 at 4:50 AM, Neil Girdhar <mistersh...@gmail.com>
> wrote:
>>
>>
>>>     [expression given name=something for x in seq]
>>>
>>
>> retval = []
>> name = something
>> for x in seq:
>>     retval.append(expression)
>> return retval
>>
>
> That's a little confusing then, because, given the way given is used
> outside of comprehensions, you would expect
>
>     [y given y=2*x for x in range(3)]
>
> to return [0, 2, 4], but it would actually raise an error.
>
>
> On Thu, May 31, 2018 at 10:32 AM, Peter O'Connor <
> peter.ed.ocon...@gmail.com> wrote:
>
>>
>>
>> On Thu, May 31, 2018 at 4:50 AM, Neil Girdhar <mistersh...@gmail.com>
>> wrote:
>>>
>>>
>>>>     [expression given name=something for x in seq]
>>>>
>>>
>>> retval = []
>>> name = something
>>> for x in seq:
>>>     retval.append(expression)
>>> return retval
>>>
>>
>> That's a little strange confusing then, because, given the way given is
>> used outside of comprehensions, you would expect
>>
>> for x in range(3):
>> y given y=2*x
>>
>>     [y given y=2*x for x in range(3)]
>>
>> to return [0, 2, 4], but it would actually raise an error.
>>
>>
>>
>>
>
>
_______________________________________________
Python-ideas mailing list
Python-ideas@python.org
https://mail.python.org/mailman/listinfo/python-ideas
Code of Conduct: http://python.org/psf/codeofconduct/

Reply via email to