Python如果修饰符优先

时间:2012-12-24 16:05:12

标签: python

对不起,我确信它被问了十亿次,但我找不到确切答案:

var = value if condition else other_value

if .. else相对于作业的优先顺序是什么?就像在C / Java三元组中一样吗?

2 个答案:

答案 0 :(得分:6)

if / else表达式是一个表达式,但赋值是一个语句。所以在Python中,你不需要考虑两者的优先级,if / else将首先完成。

在C中,赋值也是一个表达式,因此您可以用Python中不能的方式混合和匹配条件和赋值。

答案 1 :(得分:5)

作业始终具有最低优先级;它不是表达的一部分。

实际上,赋值是语句;你永远不能在表达式中使用赋值。