我打算在不定义函数的情况下简化代码。有可能吗?
a = lambda x:1 if x>1 return x-1 else return x
输出0 = 0,1 = 1,2 = 1,3 = 2
答案 0 :(得分:2)
a = lambda x:1 if x>1 return x-1 else return x
这在语法上是错误的。如果要使用if if else,请内联以使其像其他语言中的三元运算符一样工作。 您将必须编写:
# expression1 if condition else expression2
x-1 if x>1 else x
它变成:
a = lambda x: x-1 if x>1 else x
记住python中的lambda只能有一行代码。
答案 1 :(得分:1)
这是在Python中使用lambda的语法正确方法
>>> a = lambda x: x-1 if x>1 else x
>>> a(3)
2
>>> a(1)
1
>>> a(0)
0
>>> a(2)
1
要进一步了解lambda,请访问this link