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))
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))
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