¿Cómo uso la entrada de usuario para invocar una función en Python? [duplicar]
Esta pregunta ya tiene una respuesta aquí:
Llamar a una función de un módulo usando su nombre (una cadena) 10 respuestasCrear una entrada en bruto con comandos dentro de un script de Python 1 respuestaTengo varias funciones como:
def func1():
print 'func1'
def func2():
print 'func2'
def func3():
print 'func3'
Luego le pido al usuario que ingrese qué función quiere ejecutar usandochoice = raw_input()
y tratar de invocar la función que elijan usandochoice()
. Si el usuario ingresa func1 en lugar de invocar esa función, me da un error que dice'str' object is not callable
. ¿Es su modo de que yo convierta la "elección" en un valor exigible?