Python中“=”的运算符优先级是什么?

时间:2016-07-15 06:38:46

标签: python operators variable-assignment assignment-operator operator-precedence

Python's documentation未提及=的运算符优先级。那是什么?

1 个答案:

答案 0 :(得分:10)

=不是运营商。 =assignment statement

因为它是一个语句,所以它不能是表达式的一部分(表达式是某些语句的一部分,而不是相反的方式),因此排序是无关紧要的。始终执行表达式以提供语句。

对于赋值,语法指定在=符号后允许特定类型的表达式:

assignment_stmt ::=  (target_list "=")+ (starred_expression | yield_expression)

并且该语句的文档详细说明了执行命令的顺序:

  

赋值语句计算表达式列表(请记住,这可以是单个表达式或以逗号分隔的列表,后者产生元组)并将单个结果对象从左到右分配给每个目标列表。