can*_*dry -1 python functional-programming
这篇博文提出了一个curried附加函数的实现:
def addN(n):
return lambda x: x + n
def plus(a, b):
addA=addN(a)
return addA(b)
Run Code Online (Sandbox Code Playgroud)
我相信我的版本更正确,因为它一直使用一元函数.
from operator import add
plus = lambda a: lambda b: add(a, b)
plus(1)(2)
Run Code Online (Sandbox Code Playgroud)
你怎么看 ?
您的plus功能与addN博客文章中的功能相同.唯一的区别是:
lambda博客文章使用的地方def.operator.add(a,b)而不是简单a+b.使用plus和addN将给出相同的结果,因此没有一个更"正确".
请注意,您选择的函数命名令人困惑,因为您的plus函数对应于博客文章中的addN函数(而不是plus函数).