可能重複:
function making功能使得
>>> g=lambda x:x+1
>>> composition=lambda f,g:(lambda x:f(g(x)))
>>> f=g
>>> f=composition(f,g)
>>> f(9)
11
>>> f=composition(f,g)
>>> f=composition(f,g)
>>> f=composition(f,g)
>>> f(9)
14
代替使用函數組合物(F,G)的,我做了以下
>>> f=g
>>> f=lambda x:f(g(x))
>>> f(8)
RuntimeError: maximum recursion depth exceeded
我剛旨在替代相應的函數組合丁lambda表達。我很困惑爲什麼f = composition(f,g)不會產生遞歸,但是f = lambda x:f(g(x))。