一个带有单个星号的名称,可以在赋值目标中使用,以指定对于序列的一个更为通用的匹配——一个列表赋给了带星号的名称,该列表收集了序列中没有赋值给其他名称的所有项。...扩展解包的实际应用:
a匹配序列中的第一项,b匹配剩下的内容:
>>> seq = [1,2,3,4]
>>> a,*b = seq
>>> a
1
>>> b
[2, 3, 4]
b匹配序列的最后一项...---------------------------------------------------------------------------------------
边界情况
首先,带星号的名称可能只匹配单个的项...,但是,总是会向其赋值一个列表:
>>> seq
[1, 2, 3, 4]
>>> a,b,c,*d = seq
>>> print(a,b,c,d)
1 2 3 [4]
其次,如果没有剩下的内容可以匹配带星号的名称...>>> a,b,c,d,*e = seq
>>> print(a,b,c,d,e)
1 2 3 4 []
最后,如果有多个带星号的名称,或者如果值少了而没有带星号的名称,以及如果带星号的名称自身没有编写到一个列表中