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