Dadas dos listas, extraiga el máximo de elementos con K similar en la lista correspondiente.
Entrada : test_list1 = [4, 3, 6, 2, 8], test_list2 = [3, 6, 3, 4, 3], K = 3 Salida: 8 Explicación: los
elementos correspondientes
a 3 son, 4, 6 y 8 , máx. es 8.
Entrada : test_list1 = [10, 3, 6, 2, 8], test_list2 = [5, 6, 5, 4, 5], K = 5 Salida: 10 Explicación: Los
elementos correspondientes
a 5 son, 10, 6 , y 8, Máx. es 10
Método #1: Usar loop + max()
En esto, extraemos todos los elementos de la lista 1 que son iguales a K en la lista 2, y luego ejecutamos max() para obtener el máximo de ellos.
Python3
# Python3 code to demonstrate working of # Maximum of K element in other list # Using loop + max() # initializing lists test_list1 = [4, 3, 6, 2, 9] test_list2 = [3, 6, 3, 4, 3] # printing original lists print("The original list 1 is : " + str(test_list1)) print("The original list 2 is : " + str(test_list2)) # initializing K K = 3 res = [] for idx in range(len(test_list1)): # checking for K in 2nd list if test_list2[idx] == K : res.append(test_list1[idx]) # getting Maximum element res = max(res) # printing result print("Extracted Maximum element : " + str(res))
The original list 1 is : [4, 3, 6, 2, 9] The original list 2 is : [3, 6, 3, 4, 3] Extracted Maximum element : 9
Método #2: comprensión de lista + max() + zip()
En esto, realizamos la tarea de emparejar elementos usando zip() y es una solución de una sola línea provista usando comprensión de lista.
Python3
# Python3 code to demonstrate working of # Maximum of K element in other list # Using list comprehension + max() + zip() # initializing lists test_list1 = [4, 3, 6, 2, 9] test_list2 = [3, 6, 3, 4, 3] # printing original lists print("The original list 1 is : " + str(test_list1)) print("The original list 2 is : " + str(test_list2)) # initializing K K = 3 # one liner to solve this problem res = max([sub1 for sub1, sub2 in zip(test_list1, test_list2) if sub2 == K]) # printing result print("Extracted Maximum element : " + str(res))
The original list 1 is : [4, 3, 6, 2, 9] The original list 2 is : [3, 6, 3, 4, 3] Extracted Maximum element : 9
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