出现错误:函数不可迭代。我该如何解决

时间:2019-09-17 12:22:18

标签: python-3.x

在代码的最后一部分需要帮助以使其可迭代。

 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。只是想知道我在这做错了什么     代码。

1 个答案:

答案 0 :(得分:0)

正在努力拆开嵌套的括号,但是您似乎正在尝试在* b术语中同时使用列表推导和lambda。我认为,也许如果您完全删除lambda *b:可能会达到您的预期。

现在您正在使用两个lambda,这意味着您要将两个函数对象传递给map,而它需要一个函数和一个可迭代的函数。