python语句 lambda x: x(i) 中x(i)是什么意思?
发布网友
发布时间:2022-04-18 01:47
我来回答
共2个回答
热心网友
时间:2022-04-18 03:16
lambda x: x(i)
这样去理解
func(x):
x(i)
冒号之前的x是输入的形参,冒号之后是函数内的表达式
此处x就为可执行的函数对象,且能接收一个参数。
如图中,这个lambda表达式在列表推导式中,x会分别传入twotimes和square,这两个也同样是lambda表达式,没问题
热心网友
时间:2022-04-18 04:34
这个x(i)我觉得应该是把i的值赋值给x的意思
整体分析一下这段代码
twotimes = lambda x:x*2 # 传入x输出x乘2
square = lambda x:x**2 # 传入x输出x平方
n = [list(map(lambda x:x(i),[twotimes,square])) for i in range(6)] # 这里i循环生成0-5,赋值给i,在分别传入twotimes,square进行计算,将结果通过map打包,最后转化为列表输出
print(n)