A veces, mientras trabajamos con la lista de Python, podemos tener una tarea en la que necesitamos trabajar con la lista de tuplas y obtener la diferencia absoluta de su índice Kth. Este problema tiene aplicación en el dominio del desarrollo web mientras se trabaja con información de datos. Analicemos ciertas formas en que se puede realizar esta tarea.
Ejemplos:
Entrada : test_list = [(5, 4, 2), (1, 3, 4), (5, 7, 8), (7, 4, 3)], K = 0
Salida : [4, 4, 2]
Explicación : 5 – 1 = 4, por lo tanto, 4.
Entrada : test_list = [(5, 4, 2), (1, 3, 4), (5, 7, 8), (7, 4, 3)], K = 2
Salida : [2, 4, 5]
Explicación : 8 – 3 = 5, por lo tanto, 5.
Método #1: Usar bucle
En esto, para cada tupla restamos y encontramos la diferencia absoluta de las tuplas de la columna K con las tuplas consecutivas en la lista.
Python3
# Python3 code to demonstrate working of # Consecutive Kth column Difference in Tuple List # Using loop # initializing list test_list = [(5, 4, 2), (1, 3, 4), (5, 7, 8), (7, 4, 3)] # printing original list print("The original list is : " + str(test_list)) # initializing K K = 1 res = [] for idx in range(0, len(test_list) - 1): # getting difference using abs() res.append(abs(test_list[idx][K] - test_list[idx + 1][K])) # printing result print("Resultant tuple list : " + str(res))
Producción:
La lista original es: [(5, 4, 2), (1, 3, 4), (5, 7, 8), (7, 4, 3)]
Lista de tupla resultante: [1, 4, 3]
Método #2: Usando zip() + comprensión de lista
En esto, iteramos para todos los elementos en la lista usando la comprensión de la lista y comparamos los elementos emparejados usando zip().
Python3
# Python3 code to demonstrate working of # Consecutive Kth column Difference in Tuple List # Using zip() + list comprehension # initializing list test_list = [(5, 4, 2), (1, 3, 4), (5, 7, 8), (7, 4, 3)] # printing original list print("The original list is : " + str(test_list)) # initializing K K = 1 # zip used to pair each tuple with subsequent tuple res = [abs(x[K] - y[K]) for x, y in zip(test_list, test_list[1:])] # printing result print("Resultant tuple list : " + str(res))
Producción:
La lista original es: [(5, 4, 2), (1, 3, 4), (5, 7, 8), (7, 4, 3)]
Lista de tupla resultante: [1, 4, 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