This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author martin.panter
Recipients NeilGirdhar, benjamin.peterson, docs@python, martin.panter, moigagoo
Date 2015-07-06.23:59:05
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <>
Yes I think it is expected and documented that the leftovers are turned into a list. See <>. I originally had similar confusion, expectating the starred target to become a tuple, because people often use tuple-like syntax, but:

>>> generator_expression = (2**i for i in range(4))
>>> (one, *a_list, eight) = generator_expression
>>> a_list  # Not a tuple!
[2, 4]

One thing in the section I linked above that should also be fixed is that the assigned object may be any iterable, not just a sequence.

About changing the tutorial, just be careful you don’t add unnecessary complication too early. The original * and ** syntax for function parameters is not mentioned until <>. Later, argument unpacking: <>. Assignment unpacking doesn’t seem to mentioned at all (not that I am saying it should be). It might be higher priority to update the main reference documentation first.
Date User Action Args
2015-07-06 23:59:05martin.pantersetrecipients: + martin.panter, benjamin.peterson, docs@python, NeilGirdhar, moigagoo
2015-07-06 23:59:05martin.pantersetmessageid: <>
2015-07-06 23:59:05martin.panterlinkissue24136 messages
2015-07-06 23:59:05martin.pantercreate