Python: pares de índices similares en listas de tuplas

A veces, mientras trabajamos con tuplas de Python, podemos tener un problema en el que necesitamos realizar emparejamientos de índices similares. Este tipo de problema es peculiar, pero puede ocurrir en ciertos dominios. Vamos a discutir cierta forma en que se puede realizar esta tarea.

Entrada :
test_list1 = [(5, ), (1, ), (8, ), (10, )]
test_list2 = [(8, ), (1, ), (11, ), (9, )]
Salida : [[(5, 8)], [(1, 1)], [(8, 11)], [(10, 9)]]

Entrada :
test_list1 = [(5, 6, 7, 6)]
test_list2 = [(8, 6, 7, 9)]
Salida : [[(5, 8), (6, 6), (7, 7), (6, 9)]]

Método: Usar la comprensión de listas +zip()
La combinación de las funciones anteriores se puede usar para resolver este problema. En esto, realizamos la tarea de comprimir elementos de índice similares usando zip() y se usa la comprensión de listas para compilar todos los pares.

# Python3 code to demonstrate working of 
# Similar index pairs in Tuple lists
# Using list comprehension + zip()
  
# initializing lists
test_list1 = [(5, 6), (1, 2), (8, 9), (10, 33)]
test_list2 = [(8, 7), (1, 3), (11, 23), (9, 4)]
  
# printing original list
print("The original list 1 is : " + str(test_list1))
print("The original list 2 is : " + str(test_list2))
  
# Similar index pairs in Tuple lists
# Using list comprehension + zip()
res = [list(zip(a, b)) for a, b in zip(test_list1, test_list2)]
  
# printing result 
print("The paired tuples : " + str(res)) 
Producción :

The original list 1 is : [(5, 6), (1, 2), (8, 9), (10, 33)]
The original list 2 is : [(8, 7), (1, 3), (11, 23), (9, 4)]
The paired tuples : [[(5, 8), (6, 7)], [(1, 1), (2, 3)], [(8, 11), (9, 23)], [(10, 9), (33, 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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *