Python列表多个赋值

问题描述 投票:4回答:2

如何在一行中列出多个赋值。

>>>a,b,c = [1,2,3]
>>> a
1
>>>b
2
>>>c
3

但我应该怎么做才能将子阵列的其余部分分配给c

>>> a,b,c = [1,2,3,4,5,6,7,8,9] ##this gives an error but how to ..?
>>> a
1
>>>b
2
>>>c
[3,4,5,6,7,8,9]

这该怎么做?

python python-3.x list
2个回答
11
投票

你可以使用Extended iterable unpacking:通过在*前添加c,c将捕获所有(其余)项目。

>>> a, b, *c = [1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> a
1
>>> b
2
>>> c
[3, 4, 5, 6, 7, 8, 9]

-3
投票

首先将列表分配给如下:

a= [1,2,3,4,5,6,7,8,9]

将第二个元素分配给'b':

b=a[1]

将其余元素分配给'c':

c=a[2:9]

然后将第一个元素重新分配给'a':

a=a[0]

开始了。 :)

© www.soinside.com 2019 - 2024. All rights reserved.