我很好奇为什么python3的星形解包返回了一个列表的实例,而不是一个元组(在函数参数中由星号返回)。这是一个python的特质,还是有一个很好的理由背后。
In [1]: def foo(*args):
...: print(type(args))
...:
In [2]: foo(1, 2, 3, 4)
<class 'tuple'>
In [3]: first, *rest = (1, 2, 3, 4)
In [4]: type(rest)
Out[4]: list
答案 0 :(得分:3)
They figured a list would be easier to process:
在对python-3000列表[1]进行简短讨论之后,PEP 被Guido接受的是现在的形式。讨论可能的变化 是:
- ...
- 将已加星标的目标设为元组而不是列表。这与函数
*args
一致,但需要进一步处理 结果更难。