Python运算符两种应用方案详解

在计算机语言中被广泛的应用的Python运算符优先级,如果你在应用的过程中遇到困难时,比如,如果你有一个如2 + 3 * 4那样的表达式,是先做加法呢,还是先做乘法?下面的文章就是详细的介绍。

我们的中学数学告诉我们应当先做乘法――这意味着乘法运算符的优先级高于加法运算符。

下面这个表给出Python运算符优先级,从最低的优先级(最松散地结合)到最高的优先级(最紧密地结合)。这意味着在一个表达式中,Python运算符会首先计算表中较下面的运算符,然后在计算列在表上部的运算符。

运算符 描述

lambda Lambda表达式   


or 布尔“或”   


and 布尔“与”   


not x 布尔“非”   


in,not in 成员测试   


is,is not 同一性测试   



<,<=,>,>=,!=,== 比较   



| 按位或   


^ 按位异或   


& 按位与   



<<,>> 移位   



+,- 加法与减法   


*,/,% 乘法、除法与取余   


+x,-x 正负号   


~x 按位翻转   


** 指数   


x.attribute 属性参考   


x[index] 下标   


x[index:index] 寻址段   


f(arguments...) 函数调用   


(experession,...) 绑定或元组显示   


[expression,...] 列表显示   


{key:datum,...} 字典显示   


'expression,...' 字符串转换   

在表中列在同一行的运算符具有 相同优先级 。例如,+和-有相同的优先级。

计算顺序

相关推荐