有没有pythonic方法解压缩第一个元素中的列表和单个命令中的"尾部"?
例如:
>> head, tail = **some_magic applied to** [1, 1, 2, 3, 5, 8, 13, 21, 34, 55]
>> head
1
>>> tail
[1, 2, 3, 5, 8, 13, 21, 34, 55]
Run Code Online (Sandbox Code Playgroud) 如何在一行中列出多个赋值.
>>>a,b,c = [1,2,3]
>>> a
1
>>>b
2
>>>c
3
Run Code Online (Sandbox Code Playgroud)
但是我应该怎么做才能分配其余的子数组 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]
Run Code Online (Sandbox Code Playgroud)
这该怎么做?
在红宝石中我可以做类似的事情:
key, *rest = ["key1", 1, 2, 3]
Run Code Online (Sandbox Code Playgroud)
结果将是:
key = "key1"
rest = [1, 2, 3]
Run Code Online (Sandbox Code Playgroud)
有没有办法在python中做同样的事情?
我正在尝试从中提取前三个项目numbers,并将它们分配给三个不同的变量,如下所示:
numbers = [1,2,3,4,5,7,8,9,10]
[first_item, second_item, third_item] = numbers
Run Code Online (Sandbox Code Playgroud)
为什么我收到此错误?
Traceback (most recent call last):
File "test.py", line 2, in <module>
[first_item, second_item, third_item] = numbers
ValueError: too many values to unpack
Run Code Online (Sandbox Code Playgroud)