问题描述
运行此代码时出现属性错误。为什么在下一次迭代中不返回result.append(item)?
from functools import reduce
def reducer(arr):
return reduce((lambda result,item: result.append(item)),arr,[])
print(reducer([[1,3],[2,4]]))
解决方法
list.append
不返回列表。您可以使用list1 + list2
来扩展list1
中所有元素的list2
,所以下面的工作将起作用。
def reducer(arr):
return reduce((lambda result,item: result + item),arr,[])