首页 > 解决方案 > 在Python中计算相同索引的多个列表中的元素之间的最大值

问题描述

如何比较lst list of lists 内相同索引的每个列表的元素,并根据最小值获取子列表的索引?

阐述:

lst = [[1,4,7] , [2,0,5] , [9,6,3]]

FirstList = []
SecondList = []
ThirdList = []

for loop to iterate over lst:
   minimum(1,2,9) -> Append 1 to FirstList.
   minimum(4,0,5) -> Append 0 to SecondList.
   minimum(7,5,3) -> Append 3 to ThirdList.
...
...

标签: pythonpython-3.xlist

解决方案


您可以尝试list comprehension迭代zip嵌套列表,然后可以使用min/ index

index_list = [i.index(min(i)) for i in zip(*lst)] # prints [0, 1, 2]

如果您需要每个子列表中的最小值:

min_value_lst = [min(i) for i in zip(*lst)] #prints [1, 0, 3]

如果您在 3 个单独的列表中需要它们:

index_list = [[i.index(min(i))] for i in zip(*lst)] #prints [[0], [1], [2]]

推荐阅读