📅  最后修改于: 2023-12-03 15:06:56.938000             🧑  作者: Mango
在 Python 中,我们有时需要将列表中的元素解包到单独的变量中。这时就可以使用星号(*)来解包列表。下面是一些使用星号解包列表的例子:
当我们已知列表包含的元素个数时,可以使用星号来解包列表。例如,我们有一个长度为 3 的固定列表,代码如下:
lst = [1, 2, 3]
我们可以将列表中的元素解包到三个变量 a、b、c 中,代码如下:
a, b, c = lst
现在,a、b、c 变量的值分别是 1、2、3。
如果我们不知道列表包含的元素个数,又该如何解包呢?这时可以使用星号来解包列表中的剩余元素。例如,我们有一个包含 5 个元素的列表,其中前两个元素被解包到变量 a、b 中,代码如下:
lst = [1, 2, 3, 4, 5]
a, b, *rest = lst
星号后面的变量名可以任取,我们这里取 rest。现在,a、b 变量的值分别是 1、2,rest 变量的值是包含剩余元素的列表 [3, 4, 5]。
如果星号后面没有变量名,则剩下的元素被舍弃,例如:
a, b, * = lst
这里依然会将 lst 中的前两个元素解包到 a、b 中,但是剩余的元素会被舍弃。
如果列表中包含其他可迭代对象(如元组或字符串)的话,我们也可以使用星号来解包。例如,我们有一个包含元组和列表的列表,代码如下:
lst = [(1, 2), [3, 4]]
我们可以将里面的元素解包到四个变量中,代码如下:
(a, b), [c, d] = lst
现在,a、b、c、d 变量的值分别是 1、2、3、4。
以上就是使用星号解包列表的一些例子。通过使用星号解包列表,可以方便地将列表中的元素赋值给多个变量。