在 Python 2.7 中的 lambda 函数内使用 print 函数时出错

The*_*tan 1 python python-2.7

我正在 Python 2.7 中运行一个简单的代码,但它给了我语法错误。

hello = lambda first: print("Hello", first)
Run Code Online (Sandbox Code Playgroud)

报告的错误是SyntaxError: invalid syntax.

vau*_*tah 5

Python 不允许在lambda 表达式中使用语句:

请注意,使用 lambda 表达式创建的函数不能包含语句或注释。

print是 Python 2 中的一条语句,除非您print_function 从以下位置导入该功能__future__

>>> lambda x: print(x)
  File "<stdin>", line 1
    lambda x: print(x)
                  ^
SyntaxError: invalid syntax
>>> from __future__ import print_function
>>> lambda x: print(x)
<function <lambda> at 0x7f2ed301d668>
Run Code Online (Sandbox Code Playgroud)