Python: existencia emparejada en registros

A veces, mientras trabajamos con registros de Python, podemos tener un problema en el que necesitamos verificar la existencia de pares dentro del registro, o si uno no existe, el otro tampoco debería. Este tipo de problema es común en dominios como la ciencia de datos y el desarrollo web. Analicemos ciertas formas en que se puede realizar esta tarea.
 

Entrada
test_list = [(‘Gfg’, ‘is’, ‘Best’), (‘Gfg’, ‘is’, ‘good’), (‘CS’, ‘is’, ‘good’)] 
pares = ( ‘es’, ‘bueno’) 
Salida : [(‘Gfg’, ‘es’, ‘bueno’), (‘CS’, ‘es’, ‘bueno’)]
Entrada
test_list = [(‘Gfg’, ‘ es’, ‘Mejor’), (‘Gfg’, ‘es’, ‘bueno’), (‘CS’, ‘es’, ‘mejor’)] 
pares = (‘mejor’, ‘bueno’) 
Salida : [ ] 
 

Método n.º 1: uso de la expresión del generador 
Esta es una forma de fuerza bruta en la que se puede realizar esta tarea. En esto, verificamos la existencia/no existencia de ambos números y aceptamos el resultado si ninguno o ambos están presentes.
 

Python3

# Python3 code to demonstrate working of
# Paired Existence in Records
# Using generator expression
 
# initializing list
test_list = [('Gfg', 'is', 'Best'),
             ('Gfg', 'is', 'good'),
             ('CS', 'is', 'good')]
 
# printing original list
print("The original list is : " + str(test_list))
 
# initializing Pairs
pairs = ('Gfg', 'Best')
 
# Paired Existence in Records
# Using generator expression
res = []
for sub in test_list:
    if ((pairs[0] in sub and pairs[1] in sub) or (
         pairs[0] not in sub and pairs[1] not in sub)):
        res.append(sub)
 
# printing result
print("The resultant records : " + str(res))
Producción : 

La lista original es: [(‘Gfg’, ‘is’, ‘Best’), (‘Gfg’, ‘is’, ‘good’), (‘CS’, ‘is’, ‘good’)] 
La resultante registros: [(‘Gfg’, ‘is’, ‘Best’), (‘CS’, ‘is’, ‘good’)] 

 

 
Método #2: Usando XNOR 
Esta es otra forma de resolver este problema. En esto, use el poder del operador XOR para realizar esta tarea y negar el resultado.
 

Python3

# Python3 code to demonstrate working of
# Paired Existence in Records
# Using XNOR
 
# initializing list
test_list = [('Gfg', 'is', 'Best'),
             ('Gfg', 'is', 'good'),
             ('CS', 'is', 'good')]
 
# printing original list
print("The original list is : " + str(test_list))
 
# initializing Pairs
pairs = ('Gfg', 'Best')
 
# Paired Existence in Records
# Using XNOR
res = []
for sub in test_list:
    if (not ((pairs[0] in sub) ^ (pairs[1] in sub))):
        res.append(sub)
 
# printing result
print("The resultant records : " + str(res))
Producción : 

The original list is : [('Gfg', 'is', 'Best'), ('Gfg', 'is', 'good'), ('CS', 'is', 'good')]
The resultant records : [('Gfg', 'is', 'Best'), ('CS', 'is', 'good')]

 

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 *