A veces, mientras trabajamos con diccionarios, podemos tener un problema en el que necesitamos encontrar los elementos del diccionario que tienen algunas restricciones en las claves. Una de esas restricciones puede ser una coincidencia de sufijo en las claves. Analicemos ciertas formas en que se puede realizar esta tarea.
Método #1: Uso de la comprensión del diccionario +endswith()
La combinación de los dos métodos anteriores se puede utilizar para realizar esta tarea en particular. En esto, la comprensión del diccionario realiza la tarea básica de construcción del diccionario y termina con() realiza la tarea de utilidad de verificar las claves que comienzan con un sufijo específico.
# Python3 code to demonstrate working of # Keys with specific suffix in Dictionary # Using dictionary comprehension + endswith() # Initialize dictionary test_dict = {'all' : 4, 'geeks' : 5, 'are' : 8, 'freaks' : 10} # printing original dictionary print("The original dictionary : " + str(test_dict)) # Initialize suffix test_suf = 'ks' # Using dictionary comprehension + endswith() # Keys with specific suffix in Dictionary res = {key:val for key, val in test_dict.items() if key.endswith(test_suf)} # printing result print("Filtered dictionary keys are : " + str(res))
The original dictionary : {'geeks': 5, 'freaks': 10, 'are': 8, 'all': 4} Filtered dictionary keys are : {'geeks': 5, 'freaks': 10}
Método #2: Usarmap() + filter() + items() + endswith()
Esta tarea en particular también se puede realizar usando la combinación de las funciones anteriores. La función de mapa vincula la lógica de filtro de Endswith() a los elementos de cada diccionario extraídos por Items().
# Python3 code to demonstrate working of # Keys with specific suffix in Dictionary # Using map() + filter() + items() + endswith() # Initialize dictionary test_dict = {'all' : 4, 'geeks' : 5, 'are' : 8, 'freaks' : 10} # printing original dictionary print("The original dictionary : " + str(test_dict)) # Initialize suffix test_suf = 'ks' # Using map() + filter() + items() + endswith() # Keys with specific suffix in Dictionary res = dict(filter(lambda item: item[0].endswith(test_suf), test_dict.items())) # printing result print("Filtered dictionary keys are : " + str(res))
The original dictionary : {'geeks': 5, 'freaks': 10, 'are': 8, 'all': 4} Filtered dictionary keys are : {'geeks': 5, 'freaks': 10}
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