Python – 矩阵中最小和的行
我们可以有一个应用程序来查找具有最小值的列表并打印它。这似乎是一项很容易的任务,也可能很容易编码,但是使用速记来执行同样的任务总是有帮助的,因为这种问题可能会出现在 Web 开发中。
方法 #1:使用reduce()
+ lambda
以上两个函数可以帮助我们完成这个特定的任务。 lambda函数执行逻辑和迭代任务,reduce函数执行返回所需结果的任务。仅适用于Python 2。
# Python code to demonstrate
# Minimum Sum row in Matrix
# using reduce() + lambda
# initializing matrix
test_matrix = [[1, 3, 1], [4, 5, 3], [1, 2, 4]]
# printing the original matrix
print ("The original matrix is : " + str(test_matrix))
# using reduce() + lambda
# Minimum Sum row in Matrix
res = reduce(lambda i, j: i if sum(i) < sum(j) else j, test_matrix)
# printing result
print ("Minimum sum row is : " + str(res))
输出 :
The original matrix is : [[1, 3, 1], [4, 5, 3], [1, 2, 4]]
Minimum sum row is : [1, 3, 1]
方法#2:使用min()
+ key
min函数可以获得所有列表中的最小值,并且 key 用于指定必须应用的 min 条件,在这种情况下是求和。
# Python3 code to demonstrate
# Minimum Sum row in Matrix
# using min() + key
# initializing matrix
test_matrix = [[1, 3, 1], [4, 5, 3], [1, 2, 4]]
# printing the original matrix
print ("The original matrix is : " + str(test_matrix))
# using min() + key
# Minimum Sum row in Matrix
res = min(test_matrix, key = sum)
# printing result
print ("Minimum sum row is : " + str(res))
输出 :
The original matrix is : [[1, 3, 1], [4, 5, 3], [1, 2, 4]]
Minimum sum row is : [1, 3, 1]