考虑一组列表:
arrayoflists = [[2,4,5,6],[4,6,5,2],[7,9,7,5]]这个最大函数的输出如下所示:
maximum = [7,9,7,6]在Python中有什么内置的函数来执行此操作吗?
发布于 2020-02-06 07:03:05
您可以使用Python的列表理解和max函数来完成这一任务:
arrayoflists = [[2,4,5,6],[4,6,5,2],[7,9,7,5]]
maximums = [max([sublist[i] for sublist in arrayoflists]) for i in range(4)]发布于 2020-02-06 07:27:01
对列表中的相应值进行max:
>>> [*map(max, *arrayoflists)]
[7, 9, 7, 6]发布于 2020-02-06 07:09:34
这样做是可行的:
>>> list(map(max, zip(*arrayoflists)))
[7, 9, 7, 6]它的工作原理:
zip(*arrayoflists)将行转换为列,如(2, 4, 7)、(4, 6, 9)、(5, 5, 7)、(6, 2, 5).map(max, ...)为每一列计算max,如7、9、7、6.list(...)将这些结果放入列表中。https://stackoverflow.com/questions/60089297
复制相似问题