代码之家  ›  专栏  ›  技术社区  ›  Isaac Mrowka

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

  •  0
  • Isaac Mrowka  · 技术社区  · 1 年前

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

    从…起 物理中的有效计算 书中有一个Lambda的例子:

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

    Jupyter Notebook的结果是:

    
    94
    
    

    同时,VSCode没有输出,有什么方法是VSCode更喜欢lambdas的吗?为什么?

    1 回复  |  直到 1 年前
        1
  •  1
  •   S S    1 年前

    不,它们在Python中运行相同的函数。它并不是VSCode或Jupyter独有的。

    它本质上是运行编译器和解释器的区别:

    在VSCode或编译器的情况下,如果你想让它打印一些东西,你必须用print函数输出它。当然,它的评估值是94,但它不会用它做任何事情。

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

    这就足够了。

    对朱比特来说,这是一个翻译。相当于跑步 python 在您的命令行上,并在您的计算机上启动本机解释器,它将输出您给它求值的任何表达式。

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

    ====== 补遗

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