Python: función de almacenamiento como valor de diccionario

Dado un diccionario, asigne sus teclas como llamadas a funciones.

Caso 1: Sin Parámetros. 

La forma en que se emplea para lograr esta tarea es que el nombre de la función se mantiene como valores de diccionario y, al llamar con teclas, se agregan corchetes ‘()’.

Python3

# Python3 code to demonstrate working of 
# Functions as dictionary values
# Using Without params
  
# call Gfg fnc 
def print_key1():
    return "This is Gfg's value"
  
# initializing dictionary
# check for function name as key
test_dict = {"Gfg": print_key1, "is" : 5, "best" : 9}
  
# printing original dictionary
print("The original dictionary is : " + str(test_dict))
  
# calling function using brackets 
res = test_dict['Gfg']()
  
# printing result 
print("The required call result : " + str(res)) 
Producción

The original dictionary is : {'Gfg': <function print_key1 at 0x7f1c0445be18>, 'is': 5, 'best': 9}
The required call result : This is Gfg's value

Caso 2: Con parámetros 

La tarea de llamar con parámetros es similar al caso anterior, los valores se pasan durante la llamada de función entre paréntesis como en las llamadas de función habituales.

Python3

# Python3 code to demonstrate working of 
# Functions as dictionary values
# Using With params 
  
# call Gfg fnc 
def sum_key(a, b):
    return a + b
  
# initializing dictionary
# check for function name as key
test_dict = {"Gfg": sum_key, "is" : 5, "best" : 9}
  
# printing original dictionary
print("The original dictionary is : " + str(test_dict))
  
# calling function using brackets 
# params inside brackets
res = test_dict['Gfg'](10, 34)
  
# printing result 
print("The required call result : " + str(res)) 
Producción

The original dictionary is : {'Gfg': <function sum_key at 0x7f538d017e18>, 'is': 5, 'best': 9}
The required call result : 44

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 *