为什么 Lambda 在 VSCode 和 Jupyter Notebook 中的工作方式不同? (python3)

问题描述 投票:0回答:1

为什么 python Lambda 不能在 VSCode 中工作? VSCode 与 Jupyter Notebook 有何不同?

来自物理中的有效计算书中有这个 Lambda 示例:


(lambda x, y=10: 2*x + y)(42)

Jupyter Notebook 的结果是:


94

同时 VSCode 没有输出,VSCode 是否更喜欢某种 lambda 方法?为什么?

python visual-studio-code lambda jupyter-notebook
1个回答
0
投票

不,它们使用 Python 运行相同的功能。它根本不是 VSCode 或 Jupyter 独有的。

这本质上是运行编译器或解释器之间的区别:

对于 VSCode 或编译器,如果您希望它打印某些内容,则必须使用 print 函数输出它。当然,它的计算结果确实是 94,但它不会用它做任何事情。

print((lambda x, y=10: 2*x + y)(42)) 

这就足够了。

对于 Jupyter 来说,它是一个解释器。相当于在命令行上运行

python
并在计算机上启动本机解释器,它将输出您给出的表达式的计算结果。

正如你所说,它打印出 94。

====== 附录:

从技术上讲,VSCode 是一个集成开发环境 (IDE),您可能会在其中使用编译器。

© www.soinside.com 2019 - 2024. All rights reserved.