关于使用lambda函数的错误感到困惑 - python

#to add and multiply numbers using lambda in python
a=int(input("a number: "))
b=int(input("another number: "))
print("the sum is {}".format(lambda a,b:a+b))
print("the multiple is {}".format(lambda a,b:a*b))

我试图使用lambda将两个数字相加并相乘,但是我不知道为什么它会显示这样的错误。我是编程的初学者
错误是:

the sum is <function <lambda> at 0x000001B6BF941B88>
the multiple is <function <lambda> at 0x000001B6BF893798>

参考方案

您创建了一个函数,但实际上并未调用它。您可以通过两种方式更改此设置:调用lambda或不使用lambda函数。在这种情况下,第二个会更好,但是如果您只想学习lambda函数,则可以使用第一个。

print("the sum is {}".format((lambda a,b:a+b)(a, b)))
print("the multiple is {}".format((lambda a,b:a*b)(a, b)))

我所做的更改是将Lambda替换为(lambda a,b:a+b)(a, b)

或者只是删除lambda

print("the sum is {}".format(a+b))
print("the multiple is {}".format(a*b))

在这种情况下,这将是更好的选择。

45码