我有一个嵌套列表,例如这个:
test = [[15, [7, [None], [11, [None], [13, [None], [None]]]], [None]], [20, [None], [None]]]
我想从中创建另一个列表,其中仅包含嵌套中的整数。这将返回:
[15, 7, 11, 13, 20]
我已经制作了这个递归函数来完成我需要完成的事情,但是,我不禁认为这不是最好的方法。有没有更pythonic或更有效的方法来做到这一点?
def nest_search(nest, hold=[]):
for item in nest:
if isinstance(item, int):
hold.append(item)
if isinstance(item, list):
nest_search(item, hold)
return hold
>>> print nest_search(test)
[15, 7, 11, 13, 20]