有没有办法在python的lambda中执行“if”

问题:

python 2.6中,我想做:

f = lambda x: if x==2 print x else raise Exception()
f(2) #should print "2"
f(3) #should throw an exception

这显然不是语法。是否可以在lambda中执行if,如果是这样做呢?
谢谢

回答:

您要查找的语法:

lambda x: True if x % 2 == 0 else False

但是您不能在lambda中使用printraise

 
 
Code问答: http://codewenda.com/topics/python/
Stackoverflow: Is there a way to perform “if” in python’s lambda

*转载请注明本文链接以及stackoverflow的英文链接

发表评论

电子邮件地址不会被公开。 必填项已用*标注

+ 71 = 75