A veces, mientras trabajamos con un conjunto de registros, podemos tener problemas en los que necesitamos verificar la presencia de un valor particular de una clave para la existencia. Esto puede tener aplicación en muchos dominios, como la programación diaria o el desarrollo web. Analicemos ciertas formas en que se puede realizar esta tarea.
Método n.º 1: Usar cualquier() + expresión generadora
La combinación de las funciones anteriores se puede usar para realizar esta tarea. En esto, simplemente probamos todos los elementos usando any(), iterando usando la expresión del generador.
Python3
# Python3 code to demonstrate working of # Test Record existence in Dictionary # Using any() + generator expression # initializing list test_list = [{ 'name' : 'Nikhil', 'age' : 22}, { 'name' : 'Akshat', 'age' : 23}, { 'name' : 'Akash', 'age' : 23}] # printing original list print("The original list is : " + str(test_list)) # initializing key and value test_key = 'name' test_val = 'Nikhil' # Test Record existence in Dictionary # Using any() + generator expression res = any(sub[test_key] == test_val for sub in test_list) # printing result print("Does key value contain in dictionary list : " + str(res))
La lista original es: [{‘nombre’: ‘Nikhil’, ‘edad’: 22}, {‘nombre’: ‘Akshat’, ‘edad’: 23}, {‘nombre’: ‘Akash’, ‘edad’ : 23}]
¿Contiene el valor clave en la lista del diccionario?: Verdadero
Método #2: Uso de filter() + lambda
La combinación de las funciones anteriores se puede usar para realizar esta tarea. En esto, verificamos todos los valores usando el filtro y la iteración usando la función lambda.
Python3
# Python3 code to demonstrate working of # Test Record existence in Dictionary # Using filter() + lambda # initializing list test_list = [{ 'name' : 'Nikhil', 'age' : 22}, { 'name' : 'Akshat', 'age' : 23}, { 'name' : 'Akash', 'age' : 23}] # printing original list print("The original list is : " + str(test_list)) # initializing key and value test_key = 'name' test_val = 'Nikhil' # Test Record existence in Dictionary # Using filter() + lambda res = filter(lambda sub: test_val in sub.values(), test_list) if len(list(res)): res = True else : res = False # printing result print("Does key value contain in dictionary list : " + str(res))
La lista original es: [{‘nombre’: ‘Nikhil’, ‘edad’: 22}, {‘nombre’: ‘Akshat’, ‘edad’: 23}, {‘nombre’: ‘Akash’, ‘edad’ : 23}]
¿Contiene el valor clave en la lista del diccionario?: Verdadero
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