A veces, mientras trabajamos con datos, podemos tener un problema en el que requerimos encontrar todos los registros entre dos listas que recibimos. Este es un problema muy común y los registros generalmente ocurren como una tupla. Analicemos ciertas formas en que se puede resolver este problema.
Método #1: Uso de la comprensión de listas La comprensión de listas
se puede optar como método para realizar esta tarea en una línea en lugar de ejecutar un bucle para encontrar los elementos de unión. En esto, solo iteramos para una sola lista y verificamos si algún elemento ocurre en otro. Si no, volvemos a llenar la lista hecha.
# Python3 code to demonstrate working of # Records Union # Using list comprehension # Initializing lists test_list1 = [('gfg', 1), ('is', 2), ('best', 3)] test_list2 = [('i', 3), ('love', 4), ('gfg', 1)] # printing original lists print("The original list 1 is : " + str(test_list1)) print("The original list 2 is : " + str(test_list2)) # Records Union # Using list comprehension res1 = [ele1 for ele1 in test_list1] res2 = [ele2 for ele2 in test_list2 if ele2 not in res1] res = res1 + res2 # printing result print("The union of data records is : " + str(res))
The original list 1 is : [('gfg', 1), ('is', 2), ('best', 3)] The original list 2 is : [('i', 3), ('love', 4), ('gfg', 1)] The union of data records is : [('gfg', 1), ('is', 2), ('best', 3), ('i', 3), ('love', 4)]
Método n.º 2: usarset.union()
Esta tarea también se puede realizar de una manera más pequeña usando la unión de conjuntos genéricos. En esto, primero convertimos la lista de registros en un conjunto y luego realizamos su unión usando union().
# Python3 code to demonstrate working of # Records Union # Using set.union() # Initializing lists test_list1 = [('gfg', 1), ('is', 2), ('best', 3)] test_list2 = [('i', 3), ('love', 4), ('gfg', 1)] # printing original lists print("The original list 1 is : " + str(test_list1)) print("The original list 2 is : " + str(test_list2)) # Records Union # set.union() res = list(set(test_list1).union(set(test_list2))) # printing result print("The union of data records is : " + str(res))
The original list 1 is : [('gfg', 1), ('is', 2), ('best', 3)] The original list 2 is : [('i', 3), ('love', 4), ('gfg', 1)] The union of data records is : [('gfg', 1), ('is', 2), ('best', 3), ('i', 3), ('love', 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