- Published on
Python 中的三元条件表达式
在看 PyTorch 的时候发现这样的代码:
device = 'cuda' if torch.cuda.is_available() else 'cpu'
最初比较疑惑为什么 'cuda'
不是写在 if
语句的后面,而是写在了前面。
原来这是 Python 中的三元条件表达式(Ternary Conditional Expression),结构是 真值 if 条件 else 假值
:
variable = value_if_true if condition else value_if_false
执行流程:
- 先计算
condition
。 - 如果
condition
为True
,返回value_if_true
。 - 如果
condition
为False
,返回value_if_false
。
THE END