Podemos tener una aplicación para encontrar las listas con el valor máximo 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 reduce
la función hace la tarea de devolver el resultado requerido. Funciona solo en Python 2.
# Python code to demonstrate # maximum sum sublist # using reduce() + lambda # importing functools for reduce() import functools # 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 # maximum sum sublist res = functools.reduce(lambda i, j: i if sum(i) > sum(j) else j, test_matrix) # printing result print ("Maximum sum sublist is : " + str(res))
The original matrix is : [[1, 3, 1], [4, 5, 3], [1, 2, 4]] Maximum sum sublist is : [4, 5, 3]
Método n.º 2: Uso de la max()
tecla +
La función max puede obtener el máximo de toda la lista y la tecla se usa para especificar en qué condición máxima se debe aplicar, que es la suma en este caso.
# Python3 code to demonstrate # maximum sum sublist # using max() + 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 max() + key # maximum sum sublist res = max(test_matrix, key = sum) # printing result print ("Maximum sum sublist is : " + str(res))
The original matrix is : [[1, 3, 1], [4, 5, 3], [1, 2, 4]] Maximum sum sublist is : [4, 5, 3]
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