首页 > 解决方案 > 将多个函数应用于多个列表

问题描述

a=[2,1,3]
b=[4,2,3]
c=[5,4,6]
....

a=set(sorted(map(lambda x: pow(x,3), a)))

如何在不使用and (或任何其他更有效的代码)重复n次的情况下将相同的函数序列set():sorted()和应用pow()到多个列表ab...上面?cx=set(... maplambda

我知道我们可以使用下面我自己的答案这样的循环。

但是,如果我们想进一步抽象这个任务,以便给定的函数列表[f1, f2, f3, f4]可以应用于大量类似格式的列表a,该怎么办?(可以用于任务吗?)bcitertools

标签: python-3.xiterable

解决方案


a=[2,1,3]
b=[4,2,3]
c=[5,4,6]

new=[]
for lst in [a,b,c]:
    new.append(set(sorted(map(lambda x: pow(x,3), lst))))

a,b,c = new

正如@juanpa.arrivillaga 在上面的评论中所建议的,可以使用循环。


推荐阅读