j'ai écrit un exemple simple de ce que im essayant de faire:d'application de la réduction de la bêta (appel func qui retourne func) pour obtenir une abstraction (fonction) en python
class Test:
@staticmethod
def mul(x,y):
return x*y
FUNC1 = staticmethod(lambda y: Test.mul(y,2))
FUNC2 = staticmethod(lambda y: staticmethod(lambda x: Test.mul(y,x)))
print Test.FUNC1(2)
print Test.FUNC2(2)(3)
print Test.FUNC2(2)(3)
TypeError: 'staticmethod' object is not callable
Je me attendais deuxième ligne pour imprimer 6 (comme 3 * 2), comment le faire correctement?
Test.FUNC1 (2) fonctionne comme prévu, son Test.FUNC2 qui ne marche pas de travail ... cette réponse est hors de propos ... –
@OfekRon oh, je mislabeled la fonction dans les deux exemples. fixé maintenant ... vous n'avez eu aucun problème avec 'FUNC1', n'est-ce pas? –