在代码的最后一部分需要帮助以使其可迭代。
d = filter(lambda w : w%2 == 0, (map((lambda s:s*2), (lambda *b :[sum(j)/2 for j in zip(*b)]))))
print(list(d(list_one,list_two)))
d = filter(lambda w : w%2 == 0, (map((lambda s:s*2), (lambda *b :[sum(j)/2 for j in zip(*b)]))))
类型错误:“函数”对象不可迭代。
我想一起使用过滤器,地图和lambda。只是想知道我在这做错了什么 代码。
答案 0 :(得分:0)
正在努力拆开嵌套的括号,但是您似乎正在尝试在* b术语中同时使用列表推导和lambda。我认为,也许如果您完全删除lambda *b:
可能会达到您的预期。
现在您正在使用两个lambda,这意味着您要将两个函数对象传递给map
,而它需要一个函数和一个可迭代的函数。