Python: fila con suma mínima en array

Podemos tener una aplicación para encontrar las listas con el valor mínimo e imprimirla. Esto parece una tarea bastante fácil y también puede ser fácil de codificar, pero tener atajos para realizar lo mismo siempre es útil, ya que este tipo de problema puede surgir en el desarrollo web.

Método #1: Usar reduce()+ lambda
Las dos funciones anteriores pueden ayudarnos a lograr esta tarea en particular. La función lambda hace la tarea de lógica e iteración y la función de reducción hace la tarea de devolver el resultado requerido. Funciona solo en 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))
Producción :

The original matrix is : [[1, 3, 1], [4, 5, 3], [1, 2, 4]]
Minimum sum row is : [1, 3, 1]

Método #2: Uso de la min()tecla +
La función min puede obtener el mínimo de toda la lista y la tecla se usa para especificar en qué condición mínima se debe aplicar, que es la suma en este caso.

# 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))
Producción :

The original matrix is : [[1, 3, 1], [4, 5, 3], [1, 2, 4]]
Minimum sum row is : [1, 3, 1]

Publicación traducida automáticamente

Artículo escrito por manjeet_04 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *