递归输出未知深度数组的全部元素

时间:2022-12-09 22:00:59

例题: l = [1,2,[3,[4, ...]]] 这样一个未知嵌套深度的列表, 如何用一个函数打印出所有的元素呢?(结果可以是无序的)

使用递归来完成

def func(l):
# 终止条件
if not isinstance(l, list):
return l

# 递归过程
a = l.pop()
if not l:
return func(a)
return func(a) + func(l)

 

测试结果:

li = ['1', '2', ['3', ['4', '5']]]
print(func(li))
 

结果为:

 
54321