为什么:
p = lambda s: print(s)
语法无效但是:
def do_print(s):
print(s)
p = lambda s: do_print(s)
有效?
答案 0 :(得分:6)
lambda的身体必须是表达,而不是陈述。 print
是一个声明。
更新:正如所指出的,在2.x中,print
是一个语句,而在Python 3中,它是一个函数。
答案 1 :(得分:5)
答案 2 :(得分:-1)
它是读取语言的方式,它无法一步完成p = lambda s: print(s)