A veces, mientras trabajamos con los diccionarios de Python, podemos tener un problema en el que necesitamos encontrar la clave del valor dado, consultando la substring del valor de la clave. Este tipo de problema es común y tiene aplicación en muchos dominios, incluido el desarrollo web. Analicemos ciertas formas en que se puede realizar esta tarea.
Entrada : test_dict = {1: ‘Gfg es mejor’, 2: ‘CS es mejor’}
Salida : [1, 2]Entrada : test_dict = {1: ‘mejor’}
Salida : [1]
Método n. ° 1: Usar bucle +items()
La combinación de las funcionalidades anteriores se puede usar para resolver este problema. En esto, extraemos los valores del diccionario usando items() y el bucle se usa para verificar la substring usando el operador «in».
# Python3 code to demonstrate working of # Extracting Key from Value Substring # Using loop + items() # initializing dictionary test_dict = {1 : 'Gfg is good', 2 : 'Gfg is best', 3 : 'Gfg is on top'} # printing original dictionary print("The original dictionary : " + str(test_dict)) # initializing search_word srch_wrd = 'best' # Extracting Key from Value Substring # Using loop + items() res = [] for key, val in test_dict.items(): if srch_wrd in val: res.append(key) # printing result print("The Corresponding key : " + str(res))
El diccionario original: {1: ‘Gfg es bueno’, 2: ‘Gfg es mejor’, 3: ‘Gfg está en la parte superior’}
La clave correspondiente: [2]
Método #2: Uso de la comprensión de listas
Esta es otra forma más en la que se puede realizar esta tarea. En esto, realizamos el método anterior en un revestimiento de forma compacta.
# Python3 code to demonstrate working of # Extracting Key from Value Substring # Using list comprehension # initializing dictionary test_dict = {1 : 'Gfg is good', 2 : 'Gfg is best', 3 : 'Gfg is on top'} # printing original dictionary print("The original dictionary : " + str(test_dict)) # initializing search_word srch_wrd = 'best' # Extracting Key from Value Substring # Using list comprehension res = [key for key, val in test_dict.items() if srch_wrd in val] # printing result print("The Corresponding key : " + str(res))
El diccionario original: {1: ‘Gfg es bueno’, 2: ‘Gfg es mejor’, 3: ‘Gfg está en la parte superior’}
La clave correspondiente: [2]
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