【问题标题】:Is there a way of assigning lambda to a function?有没有办法将 lambda 分配给函数?
【发布时间】:2023-01-01 23:11:07
【问题描述】:

我需要将 lambda 函数分配给一个变量一种原因,它肯定可以与其他功能一起使用,例如 print 通过使用

foo = print

然后像这样使用它

foo("Hello, world!")

但它适用于 lambda 吗? 比如像这样?

foo = lambda; foo2 = foo x: x+1

我尝试这样做,但它一直给我一个 SyntaxError。

【问题讨论】:

  • 你尝试了什么?请显示您的代码。
  • 我试过“foo = lambda”
  • lambda 本身不是一个函数对象,它是一个关键字。

标签: python lambda


【解决方案1】:

这非常简单,因为您已经使用 print 完成了它。试试这个 -

foo = lambda x: x.upper()

foo('hello world')
'HELLO WORLD'

【讨论】:

  • 我的意思是像“foo = lambda”一样使用它,然后做像“foo2 = foo x: x+1”这样的事情
  • lambda 是 keyword 而不是对象。您必须定义函数并将其保存为变量。
  • @AkshaySehgal - 准确的答案!我建议您也将您的重要评论复制到您的答案中。
【解决方案2】:

lambda 是关键字,不能赋值给变量,同样不能赋值关键字forclass 等。

【讨论】:

    猜你喜欢
    • 2012-04-24
    • 2019-11-02
    • 1970-01-01
    • 1970-01-01
    • 2016-06-10
    • 1970-01-01
    • 2015-04-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多