條件表示式(或三元運算子)

三元運算子用於內聯條件表示式。它最適用於易於閱讀的簡單,簡潔的操作。

  • 引數的順序與許多其他語言(例如 C,Ruby,Java 等)不同,當不熟悉 Python 的驚人行為的人使用它時(可能會顛倒順序),這可能會導致錯誤。
  • 有些人覺得它笨拙,因為它與正常的思想流程相反(首先考慮條件然後考慮影響)。
n = 5

"Greater than 2" if n > 2 else "Smaller than or equal to 2"
# Out: 'Greater than 2'

這個表示式的結果將是用英語讀取的 - 如果條件表示式為 True,那麼它將計算到左側的表示式,否則為右側。

Tenary 操作也可以巢狀,如下所示:

n = 5
"Hello" if n > 10 else "Goodbye" if n > 5 else "Good day"

它們還提供了一種在 lambda 函式中包含條件的方法。