蟒蛇(布尔)? 那么:else语法?

可能重复:
Python三元运算符

在包括Java,C / C ++,C#等在内的一些语言中,您可以根据内联布尔表达式的结果分配值。

例如,

return (i < x) ? i : x

这将返回我如果我<x,否则它会返回x。 我喜欢这个,因为它在很多情况下比下面更长的语法更紧凑。

if (i < x)
  return i
else
  return x

是否有可能在Python中使用这种语法,如果是这样,如何?


你可以使用(x if cond else y) ,例如

>>> x = 0
>>> y = 1
>>> print("a" if x < y else "b")
a

这将起到拉姆达功能。


是的,它看起来像这样:

return i if i < x else x

它在Python中被称为条件运算符。


python中的三元运算符。

a if b else c

>>> a=1
>>> b=2
>>> a if a<b else b
1
>>> a if a>b else b
2
链接地址: http://www.djcxy.com/p/7397.html

上一篇: python (bool) ? then : else syntax?

下一篇: What's the best way to replace the ternary operator in Python?