在Python的列表列表中查找每个索引的最小值
在某些问题中,我们需要确定列表中每个元素的最小值。但是在求解矩阵运算时,我们需要找到矩阵中每一列的最小值。这需要我们从列表中找到最小值。因为矩阵的每一列都是列表的列表。
使用min()和zip()
在下面的示例中,我们使用min()和zip()。在这里zip()函数将来自多个列表的相同索引处的元素组织到一个列表中。然后,我们使用for循环将min()函数应用于zip函数的结果。
示例
List = [[90, 5, 46], [71, 33, 2], [9, 13, 70]] print("List : " + str(List)) # using min()+ zip() result = [min(index) for index in zip(*List)] print("minimum of each index in List : " + str(result))
运行上面的代码将为我们提供以下结果:
List : [[90, 5, 46], [71, 33, 2], [9, 13, 70]] minimum of each index in List : [9, 5, 2]
使用map(),min()和zip()
我们还可以通过与上述类似的方法一起使用map()和zip()。在这里,我们将zip()的结果应用于min()。为此,我们使用map()代替了for循环。
示例
List = [[0.5, 2.4, 7], [5.5, 1.9, 3.2], [8, 9.9, 10]] print("The list values are: " + str(List)) # using min() + map() + zip() result = list(map(min, zip(*List))) #result print("Minimum of each index in list of lists is : " + str(result))
运行上面的代码将为我们提供以下结果:
The list values are: [[0.5, 2.4, 7], [5.5, 1.9, 3.2], [8, 9.9, 10]] Minimum of each index in list of lists is : [0.5, 1.9, 3.2]