映射列表列表的最大功能

时间:2014-04-29 19:48:20

标签: python map

我堆叠了以下问题,我需要在列表之间的相等位置之间找到最大值。 Map函数运行得很好,但如何使它适用于列表列表?使用map(max,d)给出了每个列表的最大值。问题是列表中的列表数量是可变的。欢迎任何建议! 问题的输入是d而不是a,b,c,d - 是列表的列表,比较是按列表中的每个位置成对的。

a = [0,1,2,6]
b = [5,1,0,7]
c = [3,8,0,8]
map(max,a,b,c)
# [5,8,2,8]
d = [a,b,c]
map(max,d)
[6,7,8]

2 个答案:

答案 0 :(得分:2)

a = [0,1,2,6]
b = [5,1,0,7]
c = [3,8,0,8]

print [max(itm) for itm in zip(a, b, c)]

甚至更短:

print map(max, zip(a, b, c))

答案 1 :(得分:0)

这个怎么样:

max(map(max,d))