Python – Resolver teclas flotantes en el diccionario

Dado un diccionario con una variedad de claves de coma flotante, encuentre una manera de acceder a ellas como valor único.

Entrada : test_dict = {“010.78”: “Gfg”, “9.0”: “es”, “10”: “Mejor”}, K = “09.0”
Salida : “es”
Explicación : 09.0 -> 9.0 cuyo valor es “ es».

Entrada : test_dict = {“010.78”: “Gfg”, “9.0”: “es”, “10”: “Mejor”}, K = “10.0”
Salida : “Mejor”
Explicación : 10.0 -> 10 cuyo valor es “ Mejor».

Método #1: Usando float() + loop

Esta es una de las formas de resolver este problema. En esto, la estrategia utilizada es convertir la clave en valor flotante usando float(), se resuelve en un valor único y realiza una verificación de la string de entrada después de la conversión a float(), ambos se resuelven en un valor flotante común.

Python3

# Python3 code to demonstrate working of 
# Resolve Float Keys in Dictionary
# Using float() + loop()
  
# initializing dictionary
test_dict = {"010.78" : "Gfg", "9.0" : "is", "10" : "Best"}
  
# printing original dictionary
print("The original dictionary is : " + str(test_dict))
  
# initializing K 
K = "10.78"
  
# performing resolution
res = dict()
for key in test_dict:
    res[float(key)] = test_dict[key]
  
# converting compare value to float 
convK = float(K)
  
# performing value access 
res = res[convK]
  
# printing result 
print("Value of resolved float Key : " + str(res)) 
Producción

The original dictionary is : {'010.78': 'Gfg', '9.0': 'is', '10': 'Best'}
Value of resolved float Key : Gfg

Método #2: Usando la comprensión del diccionario + float()

Esto se calcula de manera similar al método anterior. La diferencia es que para la conversión se emplea la comprensión del diccionario de una sola línea.

Python3

# Python3 code to demonstrate working of 
# Resolve Float Keys in Dictionary
# Using dictionary comprehension + float()
  
# initializing dictionary
test_dict = {"010.78" : "Gfg", "9.0" : "is", "10" : "Best"}
  
# printing original dictionary
print("The original dictionary is : " + str(test_dict))
  
# initializing K 
K = "10.78"
  
# performing resolution using dictionary comprehension
res = {float(key) : test_dict[key] for key in test_dict}
  
# converting compare value to float 
convK = float(K)
  
# performing value access 
res = res[convK]
  
# printing result 
print("Value of resolved float Key : " + str(res)) 
Producción

The original dictionary is : {'010.78': 'Gfg', '9.0': 'is', '10': 'Best'}
Value of resolved float Key : Gfg

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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *