只是出于好奇。几天前发现了Lambdas。我很想知道是否可以做这样的事情:
((尝试过解释,但我的尝试似乎都无效)
p = lambda x: (lambda x: x%2)/2
没有明确的目的。我只是找不到满意的答案。我可能误解了Lambda。
您实际上不是呼叫内部lambda
:
p = lambda x: (lambda x: x%2)(x)/2
[注意,在Python 2中,此示例将始终返回0
,因为除以2
的余数将是0
或1
,并且将结果除以2
的整数将导致截断的0
]。
您可以使用内部lambda返回基于外部参数的另一个函数:
mul = lambda x: (lambda y: y * x)
times4 = mul(4)
print times4(2)
(lambda x: x%2)
是function,将函数除以2
没有任何意义。您可能要调用它并除以它返回的值。