Python如果修饰符优先

dmi*_*try -1 python

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

var = value if condition else other_value
Run Code Online (Sandbox Code Playgroud)

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

Ned*_*der 6

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

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


Mar*_*ers 5

赋值始终具有最低优先级; 它不是表达的一部分.

事实上,任务是一种陈述 ; 你永远不能在表达式中使用赋值.