Python | Intersección en datos de registros de tupla

A veces, mientras trabajamos con datos, podemos tener un problema en el que necesitamos encontrar los registros coincidentes 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 puede optar como método para realizar esta tarea en una línea en lugar de ejecutar un ciclo para encontrar el elemento común. En esto, solo iteramos para una sola lista y verificamos si algún elemento ocurre en otro.

# Python3 code to demonstrate working of
# Intersection in Tuple Records Data
# 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))
  
# Intersection in Tuple Records Data
# Using list comprehension
res = [ele1 for ele1 in test_list1 
       for ele2 in test_list2 if ele1 == ele2]
  
# printing result
print("The Intersection of data records is : " + str(res))
Producción :

The original list 1 is : [('gfg', 1), ('is', 2), ('best', 3)]
The original list 2 is : [('i', 3), ('love', 4), ('gfg', 1)]
The Intersection of data records is : [('gfg', 1)]

Método #2: Usarset.intersection()
Esta tarea también se puede realizar de una manera más pequeña usando la intersección del conjunto genérico. En esto, primero convertimos la lista de registros en un conjunto y luego realizamos su intersección usando intersection().

# Python3 code to demonstrate working of
# Intersection in Tuple Records Data
# Using set.intersection()
  
# 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))
  
# Intersection in Tuple Records Data
# set.intersection()
res = list(set(test_list1).intersection(set(test_list2)))
  
# printing result
print("The Intersection of data records is : " + str(res))
Producción :

The original list 1 is : [('gfg', 1), ('is', 2), ('best', 3)]
The original list 2 is : [('i', 3), ('love', 4), ('gfg', 1)]
The Intersection of data records is : [('gfg', 1)]

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 *