Python lambda-在这种情况下有必要吗?
Python lambda-在这种情况下有必要吗?,python,lambda,Python,Lambda,lambda xxx:foo(xxx)-它与刚才的foo完全相同吗? 用于建筑,如 map(lambda xxx:foo(xxx),我的东西) 我看不出有什么区别: def plus(a): return a+1 for i in map(plus, [1,2,3]): print(i) for i in map(lambda a: plus(a), [1,2,3]): print(i) 打印相同的 2 3 4 是的,没错lambda x:foo(x)与调用foo(x
lambda xxx:foo(xxx)
-它与刚才的foo
完全相同吗?
用于建筑,如
map(lambda xxx:foo(xxx),我的东西)
我看不出有什么区别:
def plus(a):
return a+1
for i in map(plus, [1,2,3]):
print(i)
for i in map(lambda a: plus(a), [1,2,3]):
print(i)
打印相同的
2
3
4
是的,没错
lambda x:foo(x)
与调用foo(x)
相同
请记住,lambda
只是一个匿名函数,它对x
起作用。在这种情况下,它只需在x
上调用foo
,并返回foo(x)
的结果
例如,调用(lambda x:foo(x),60)
类似于这样做:
def function2(y):
return y*2
def function1(x):
return function2(x)
function1(60)
是的,没错
lambda x:foo(x)
与调用foo(x)
相同
请记住,lambda
只是一个匿名函数,它对x
起作用。在这种情况下,它只需在x
上调用foo
,并返回foo(x)
的结果
例如,调用(lambda x:foo(x),60)
类似于这样做:
def function2(y):
return y*2
def function1(x):
return function2(x)
function1(60)
不,lambda x:foo(x)
与foo(x)
不同,而是foo
。eta减少是将lambda x:foo(x)
转换为foo
map(lambda:plus(a),[1,2,3])
和map(plus,[1,2,3])
通过将lambda:plus(a)
替换为plus
eta缩减规则的应用来关联。否,lambda x:foo(x)
与foo(x)
不同,而是foo
。eta减少是将lambda x:foo(x)
转换为foo
map(lambda:plus(a),[1,2,3])
和map(plus,[1,2,3])
通过将lambda:plus(a)
替换为plus
eta缩减规则的应用来关联。是的,这是关于foo
而不是foo(x)
,这就是我的意思,我会编辑我的问题,谢谢你,关于foo
不是foo(x)
,这就是我的意思,我将编辑我的问题,谢谢