【发布时间】:2021-12-15 09:50:24
【问题描述】:
一个例子:
list = [[2, 1, 2, 3, 4],
[0, 4, 5],
[1, 8, 9]]
所以嵌套列表中的第一个索引决定了后面哪些数字将被放入非嵌套列表中。
[2, 1, 2, 3, 4] -> 2: so 1 and 2 gets picked up
[0, 4, 5] -> 0: no number gets picked up
[1, 8, 9] -> 1; number 8 gets picked up
输出将是:
[1, 2, 8]
这是我目前所拥有的:
def nested_list(numbers):
if isinstance(numbers[0], list):
if numbers[0][0] > 0:
nested_list(numbers[0][1:numbers[0][0] + 1])
else:
numbers = list(numbers[0])
return numbers + nested_list(numbers[1:])
我尝试通过递归获取列表,但出现了问题。我错过了什么或者即使没有递归也可以做到这一点?
【问题讨论】:
标签: python list recursion nested nested-lists