在 Python 中查找列表列表中每个索引的最小值

pythonserver side programmingprogramming更新于 2024/1/4 10:08:00

在某些问题中,我们需要确定列表中每个元素的最小值。但在解决矩阵运算时,我们需要找到矩阵中每列的最小值。这需要我们从列表列表中找到最小值。因为矩阵的每一列都是列表的列表。

使用 min() 和 zip()

在下面的例子中,我们使用 min() 和 zip()。这里 zip() 函数将来自多个列表的同一索引处的元素组织成一个列表。然后我们使用 for 循环将 min() 函数应用于 zip 函数的结果。

示例

List = [[90, 5, 46], [71, 33, 2], [9, 13, 70]]
print("List : " + str(List))
# 使用 min()+ zip()
result = [min(index) for index in zip(*List)]
print("List 中每个索引的最小: " + str(result))

运行上述代码得到以下结果:

List : [[90, 5, 46], [71, 33, 2], [9, 13, 70]]
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("列表值为:" + str(List))
# 使用 min() + map() + zip()
result = list(map(min, zip(*List)))
# 结果
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]

相关文章