对不起,我确信它被问了十亿次,但我找不到确切答案:
var = value if condition else other_value
if .. else
相对于作业的优先顺序是什么?就像在C / Java三元组中一样吗?
答案 0 :(得分:6)
if / else表达式是一个表达式,但赋值是一个语句。所以在Python中,你不需要考虑两者的优先级,if / else将首先完成。
在C中,赋值也是一个表达式,因此您可以用Python中不能的方式混合和匹配条件和赋值。
答案 1 :(得分:5)
作业始终具有最低优先级;它不是表达的一部分。
实际上,赋值是语句;你永远不能在表达式中使用赋值。