Dado un diccionario con pares clave-valor, elimine todas las claves con valores mayores que K, incluidos los valores mixtos.
Entrada : test_dict = {‘Gfg’: 3, ‘es’: 7, ‘mejor’: 10, ‘para’: 6, ‘geeks’: ‘CS’}, K = 7 Salida : {‘Gfg’: 3, ‘for’: 6, ‘geeks’: ‘CS’} Explicación : se eliminan todos los valores mayores que K. Se mantiene el valor mixto. Entrada : test_dict = {‘Gfg’: 3, ‘is’: 7, ‘best’: 10, ‘for’: 6, ‘geeks’: ‘CS’}, K = 1 Salida : {‘geeks’: ‘CS ‘} Explicación : solo se retiene el valor Mixto.
Método #1: Usando isinstance() + bucle
Esta es una de las formas en que se puede realizar esta tarea. En esto, usamos instancias para obtener valores integrales y comparaciones para obtener valores no mayores que K.
Python3
# Python3 code to demonstrate working of # Remove keys with Values Greater than K ( Including mixed values ) # Using loop + isinstance() # initializing dictionary test_dict = {'Gfg' : 3, 'is' : 7, 'best' : 10, 'for' : 6, 'geeks' : 'CS'} # printing original dictionary print("The original dictionary is : " + str(test_dict)) # initializing K K = 6 # using loop to iterate keys of dictionary res = {} for key in test_dict: # testing for data type and then condition, order is imp. if not (isinstance(test_dict[key], int) and test_dict[key] > K): res[key] = test_dict[key] # printing result print("The constructed dictionary : " + str(res))
The original dictionary is : {'Gfg': 3, 'is': 7, 'best': 10, 'for': 6, 'geeks': 'CS'} The constructed dictionary : {'Gfg': 3, 'for': 6, 'geeks': 'CS'}
Método #2: Usando la comprensión del diccionario + isinstance()
La combinación de las funciones anteriores se utiliza para resolver este problema. Esto realiza una tarea similar al método anterior. La única diferencia es que funciona en una sola línea utilizando la comprensión del diccionario.
Python3
# Python3 code to demonstrate working of # Remove keys with Values Greater than K ( Including mixed values ) # Using dictionary comprehension + isinstance() # initializing dictionary test_dict = {'Gfg' : 3, 'is' : 7, 'best' : 10, 'for' : 6, 'geeks' : 'CS'} # printing original dictionary print("The original dictionary is : " + str(test_dict)) # initializing K K = 6 # using list comprehension to perform in one line res = {key : val for key, val in test_dict.items() if not (isinstance(val, int) and (val > K))} # printing result print("The constructed dictionary : " + str(res))
The original dictionary is : {'Gfg': 3, 'is': 7, 'best': 10, 'for': 6, 'geeks': 'CS'} The constructed dictionary : {'Gfg': 3, 'for': 6, 'geeks': 'CS'}
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