def sum_(f, start, end):
# 1st_value,_,__ = map(f,[start,end]) # how to get 1st value passed on lambda function here ?
# print(1st_value+start+end)
return
if __name__ == '__main__':
print(sum_(lambda y: 1.0, 5, 10))) # 1st_value=1.0,2nd_value=5, 3rd_value=10
如何从sum_()
内部的lambda函数中获取1.0
值?我试过map()
,但它不起作用。
我也问过其他类似的问题,但没有找到我的答案,所以请不要重复。
您需要调用lambda函数;您已经将lambda函数传递给函数sum_
,但您没有调用lambda:
>>> def sum_(f, start, end):
value = f(None) # Pass value of y
print(start-end+value)
>>>> sum_(lambda y: 1.0, 5, 10)
-4.0
附带说明的是,您在代码的注释部分中使用的1st_value
不是有效的变量名