A veces nos encontramos con situaciones en las que requerimos aplicar una función particular a cada elemento de dos listas en un índice similar. Estos son bastante similares y surgen como aplicación para ciertas utilidades. Analicemos ciertas formas en las que se puede realizar el módulo, es decir, el resto de dos listas.
Método n.º 1: Uso zip()
de la comprensión de lista +
La operación zip se puede usar para vincular una lista con la otra y la parte de cálculo puede ser manejada por la comprensión de lista y, por lo tanto, proporciona una forma abreviada de este problema en particular.
# Python3 code to demonstrate # Lists Modulo # using zip() + list comprehension # initializing lists test_list1 = [3, 5, 2, 6, 4] test_list2 = [7, 3, 4, 1, 5] # printing original lists print ("The original list 1 is : " + str(test_list1)) print ("The original list 2 is : " + str(test_list2)) # Lists Modulo # using zip() + list comprehension res = [i % j for i, j in zip(test_list1, test_list2)] # printing result print ("The modulo list is : " + str(res))
The original list 1 is : [3, 5, 2, 6, 4] The original list 2 is : [7, 3, 4, 1, 5] The modulo list is : [3, 2, 2, 0, 4]
Método n.º 2: Usarmap()
la función de mapa es la forma más elegante en la que posiblemente podamos realizar el entrelazado de una función con ambas listas. También se pueden aplicar diferentes operaciones distintas del módulo sobre él.
# Python3 code to demonstrate # Lists Modulo # using map() from operator import mod # initializing lists test_list1 = [3, 5, 2, 6, 4] test_list2 = [7, 3, 4, 1, 5] # printing original lists print ("The original list 1 is : " + str(test_list1)) print ("The original list 2 is : " + str(test_list2)) # Lists Modulo # using map() res = list(map(mod, test_list1, test_list2)) # printing result print ("The modulo list is : " + str(res))
The original list 1 is : [3, 5, 2, 6, 4] The original list 2 is : [7, 3, 4, 1, 5] The modulo list is : [3, 2, 2, 0, 4]
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