Ver Mensaje Individual
  #5 (permalink)  
Antiguo 18/08/2015, 13:37
Avatar de Tropy
Tropy
 
Fecha de Ingreso: diciembre-2013
Mensajes: 62
Antigüedad: 10 años, 11 meses
Puntos: 1
Respuesta: [Python] Retornar valores en funciones de orden superior

Cita:
Iniciado por PHPeros Ver Mensaje
Tienes un typo en el código (mutiplicacion), igual es eso.
He probado y tampoco, al igual lo intente con una opción (suma) y me da el error de nuevo.

Es raro, pero habrá algún error tonto y no me doy cuenta...
Gracias por tus respuestas.

Saludos.

--------------------------------------------------------------------------------------------------------------------------------------------------------------------

EDIT: Había un error tonto en la ortografía de multiplicación, había puesto mutiplicacion sin la 'L', pero aún así intenté corregirlo y simplificarlo y me sigue dando el mismo error.
Código Python:
Ver original
  1. #Funciones de orden superior
  2. def seleccion(operacion):
  3.     def suma(n, m):
  4.         return n + m
  5.  
  6.     def multi(n, m):
  7.         return n * m
  8.  
  9.     if operacion == 'suma':
  10.         return suma
  11.     elif operacion == 'multi':
  12.         return multi
  13.  
  14. fGuardada = seleccion('multi')
  15.  
  16. print fGuardada(3, 4)

Me salta este error:

Código:
Traceback (most recent call last):
  File "de.py", line 16, in <module>
    print fGuardada(3, 4)
TypeError: 'NoneType' object is not callable
Saludos.

Última edición por Tropy; 18/08/2015 a las 14:07