以下是我目前正在处理的内容:
def f(n):
return n
f.__call__ = lambda n: n + 1
print f(2) #I expect an output of 3 but get an output of 2
我对另一种达到所需输出的方法不感兴趣。相反,出于教育目的,我想知道为什么像我所做的那样覆盖__call__
不起作用。
以下是我目前正在处理的内容:
def f(n):
return n
f.__call__ = lambda n: n + 1
print f(2) #I expect an output of 3 but get an output of 2
我对另一种达到所需输出的方法不感兴趣。相反,出于教育目的,我想知道为什么像我所做的那样覆盖__call__
不起作用。
dir(f)
以查看它们是否拥有它。 - Tadeck