首页 > 解决方案 > 在附加到列表时应用 lambda 函数

问题描述

想象一个一维数组“inter”和一个空列表“visual_pred”。我想遍历数组中的所有元素并将每个元素附加到我的列表中,同时将元素添加到列表的最后一个条目中。

我的代码如下所示:

visual = []

for x in inter:
    if x > 0:
        visual.append(lambda x: x + visual[-1])
    else:
        visual.append(visual[-1])

执行代码后,我的列表“inter”中的所有条目如下所示:
function __main__.lambda(x)

这里有什么问题,我该如何挑战它?

标签: pythonarrayslistlambda

解决方案


您在这里所做的是将 lambda 函数本身附加到您的列表中,而不是 lambda 函数输出。无论如何,我实际上不明白为什么你需要一个 lambda。这可以满足您的需求。

visual = []

for x in inter:
    if x > 0:
        visual.append(x + visual[-1])
    else:
        visual.append(visual[-1])

推荐阅读