Der folgende Code:Warum werden identische Teiltafeln in Python (2.7.11) als ungleich verglichen?
from functools import partial
def f(a):
print a
g = partial(f, 1)
h = partial(f, 1)
assert(g == h)
wirft eine Behauptung Fehler. Warum?
Partial gibt ein aufrufbares Objekt mit den Attributen .func, .args und .keywords zurück. Im Beispiel:
g.func == h.func == f
g.args == h.args == (1,)
g.keywords == h.keywords == {}
Sollte nicht g == h?
Die wahrscheinlichste ist wahrscheinlich, eine klassenbasierte Ersetzung zu erstellen, die '__eq __()' definiert. –