On Thu, Feb 5, 2015 at 2:40 AM, Steven D'Aprano
<steve+comp.lang.pyt...@pearwood.info> wrote:
> Devin Jeanpierre wrote:
>
>> On Wed, Feb 4, 2015 at 1:18 PM, Chris Angelico <ros...@gmail.com> wrote:
>>> On Thu, Feb 5, 2015 at 4:36 AM, Peter Otten <__pete...@web.de> wrote:
>>>> Another alternative is to put a list literal on the lefthand side:
>>>>
>>>>>>> def f(): yield 42
>>>>
>>>> ...
>>>>>>> [result] = f()
>>>>>>> result
>>>> 42
>>>
>>> Huh, was not aware of that alternate syntax.
>>
>> Nor are most people. Nor is Python, in some places -- it seems like
>> people forgot about it when writing some bits of the grammar.
>
> Got an example where you can use a,b but not [a,b] or (a,b)?

>>> def f(a, (b, c)):
...     print a, b, c
...
>>> f(3, [4, 5])
3 4 5
>>> def g(a, [b, c]):
  File "<stdin>", line 1
    def g(a, [b, c]):
             ^
SyntaxError: invalid syntax

Although to be fair, the first syntax there is no longer valid either
in Python 3.
-- 
https://mail.python.org/mailman/listinfo/python-list

Reply via email to