# python3小白课:运算符优先级 我们在前面的课程中学习了许许多多的运算符,我们在学习时为了简化,都是最简单的写法来表述它们,有时候一个表达式里面仅出现一个运算符,方便大家理解。而它们如果同时出现在一起,python解释器在解释的时候是有优先级顺序的,我们来看看下面的表格:
Python 运算符优先级和结合性一览表
运算符说明 Python运算符 优先级 结合性 优先级顺序
小括号 ( ) 19
︿
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 | 
 |
 |
索引运算符 x[i] 或 x[i1: i2 [:i3]] 18
属性访问 x.attribute 17
乘方 ** 16
按位取反 ~ 15
符号运算符 +(正号)、-(负号) 14
乘除 *、/、//、% 13
加减 +、- 12
位移 >>、<< 11
按位与 & 10
按位异或 ^ 9
按位或 | 8
比较运算符 ==、!=、>、>=、<、<=  7
is 运算符 is、is not 6
in 运算符 in、not in 5
逻辑非 not 4
逻辑与 and 3
逻辑或 or 2
逗号运算符 exp1, exp2 1
上面这东西,大家看一看就好,在实际编写代码的过程中,我们需要注意代码的可读性,所以我们一般不需要写那么复杂的多个运算符糅杂在一起的语句,如果有,你可以拆成多行来写,这样阅读起来更加清晰。 同时我们可以注意到优先级最高的应该是`()`小括号,因此我们可以完全记不住这张表,使用小括号来将表达式计算顺序来表达清楚,这样更有助于代码的可读性。 ### 单词释义 | 单词 | 释义 | | --------- | ---------------------------------- | | atrribute | 属性 | | exp | expression表达式这个单词的简写形式 |