Python中的(bool) ? then : else语法?

18 浏览
0 Comments

Python中的(bool) ? then : else语法?

这个问题已经有答案了:

可能是重复的问题:

Python三目运算符

在一些语言中,包括Java、C/C++、C#等,你可以基于内联布尔表达式的结果来赋值。

例如,

return (i < x) ? i : x

如果i < x,则返回i,否则返回x。我喜欢这种写法,因为在许多情况下比后面更长的语法更紧凑。

if (i < x)
  return i
else
  return x

是否可以在Python中使用这种语法,如果可以,应该怎么做?

admin 更改状态以发布 2023年5月25日
0
0 Comments

是的,看起来是这样的:

return i if i < x else x

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

0
0 Comments

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

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

这也适用于lambda函数

0