为什么明星在python中解压缩会给出一个列表

时间:2018-02-25 19:23:43

标签: python-3.x

我很好奇为什么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

1 个答案:

答案 0 :(得分:3)

They figured a list would be easier to process:

  

在对python-3000列表[1]进行简短讨论之后,PEP   被Guido接受的是现在的形式。讨论可能的变化   是:

     
      
  • ...
  •   
  • 将已加星标的目标设为元组而不是列表。这与函数*args一致,但需要进一步处理   结果更难。
  •