Betrachten Sie den folgenden Code ein:ungebundene Methode mit "Enum-like" Klasse
ff = lambda x : x
gg = lambda x : x*2
class FunctionCollection(object):
f = ff
g = gg
def FunctionCaller(x, Type = FunctionCollection.f):
return Type(x)
y = FunctionCaller(x)
Es gibt eine
ungebundene Methode() muss mit FunctionCollection Instanz als erstes Argument (got ndarray Instanz aufgerufen werden stattdessen)
Nachricht, die ich nicht verstehe. Eine naheliegende Lösung wäre, ff und gg INSIDE FunctionCollection zu definieren, aber ich würde gerne wissen, ob es nicht möglich ist, ff und gg in einem Modul zu definieren, dann eine Enum mit den "Zeigern" zu diesen Funktionen zu erstellen und diese dann zu übergeben "Zeiger" als Argumente. Entschuldigung für die Namensgebung im C-Stil.
Was ist daran falsch?
Danke,
Mike
„Eine offensichtliche Lösung ff definieren würde und gg INSIDE FunctionCollection "- nein, würde nicht helfen. – user2357112
in 'y = FunctionCaller (x)', wo ist 'x' definiert? –