最近看30-seconds-of-python-code, 发现一个展开列表的例子, 想了很久, 在这里记录一下心得(PS: 代码均在Python3.6上测试)。
首先我想到的是递归列表推导,然后代码写出来是这样子的
def flatten(arr):
if isinstance(arr, list):
return [a for i in arr for a in flatten(i)]
else:
return [arr]
然后看了GitHub的代码, 在这里粘贴出来
def spread