Issue
Why doesn't this work?
lambda: print "x"
Is this not a single statement, or is it something else? The documentation seems a little sparse on what is allowed in a lambda...
Solution
A lambda
's body has to be a single expression. In Python 2.x, print
is a statement. However, in Python 3, print
is a function (and a function application is an expression, so it will work in a lambda). You can (and should, for forward compatibility :) use the back-ported print function if you are using the latest Python 2.x:
In [1324]: from __future__ import print_function
In [1325]: f = lambda x: print(x)
In [1326]: f("HI")
HI
Answered By - L̲̳o̲̳̳n̲̳̳g̲̳̳p̲̳o̲̳̳k̲̳̳e̲̳̳ Answer Checked By - Mildred Charles (PHPFixing Admin)
0 Comments:
Post a Comment
Note: Only a member of this blog may post a comment.