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. Las más populares son 4 de las operaciones matemáticas elementales. Estos son bastante similares y surgen como aplicación para ciertas utilidades. Analicemos ciertas formas en que se puede realizar la división 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 # division of lists # 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)) # division of lists # using zip() + list comprehension res = [i / j for i, j in zip(test_list1, test_list2)] # printing result print ("The division 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 division list is : [0.42857142857142855, 1.6666666666666667, 0.5, 6.0, 0.8]
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. Sobre él también se pueden aplicar distintas operaciones distintas a la división.
# Python3 code to demonstrate # division of lists # using map() from operator import truediv # 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)) # division of lists # using map() res = list(map(truediv, test_list1, test_list2)) # printing result print ("The division 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 division list is : [0.42857142857142855, 1.6666666666666667, 0.5, 6.0, 0.8]
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