如何在不使用模块的情况下对一维嵌套列表? 示例:
input : [[[2]], [4, [5, 6, [6], 6, 6, 6], 7]
output: [2, 4, 5, 6, 6, 6, 6, 6, 7]
我写了函数
result = []
def flat_list(array):
for x in array:
if isinstance(x, list):
flat_list(x)
else:
result.append(x)
print(x)
return result
我想仅使用函数而不使用外部任何变量来执行此操作。谢谢
答案 0 :(得分:1)
您可以使用以下递归函数进行操作:
inList = [[[2]], [4, [5, 6, [6], 6, 6, 6], 7]]
def flatten(l):
r = []
for elem in l:
if isinstance(elem,list):
r += flatten(elem)
else:
r.append(elem)
return r
print(flatten(inList))
结果:
[2, 4, 5, 6, 6, 6, 6, 6, 7]