一、算数运算符
+:两个数相加
-:两个数相减
*:两个数相乘或者返回一个被重复若干次的字符串
/:两个数相除,返回的结果为浮点类型
//:向下取整
%:两个数相除,取余数,即取模运算
**:幂乘,即x的y次方
注意:①两个数相除,即使能整除,结果也是浮点型
②浮点型数据的运算结果是不准确的,如果要精确运算,需要引入Decimal(Decimal()中的参数类型为字符串型)
二、赋值运算符
=:将右边的值赋给左边的变量
+=:先加后赋值,例a += b,即a = a + b
-=:先减后赋值,例 a -= b,即a = a - b
*=:先乘后赋值,例 a *= b,即 a = a * b
/=:先除后赋值,例 a /= b,即 a = a / b
//=:先整除后赋值,例 a //= b,即 a = a // b
%=:先取余后赋值,例 a %= b,即 a = a % b
**=:先幂乘后赋值,例 a **= b,即 a = a ** b
三、比较运算符(运算结果为布尔类型)
>、>=、<、<=、==(恒等于,类型和值都相等 ‘4’ == 4 False )、!=
四、成员运算符(针对多个值的运算)
in:a in b,如果在指定的序列b中找到值a,返回True,反之,返回False
not in:a not in b,如果在指定的序列b没有找到值a,返回True,反之,返回False
注:字符串、列表list、元祖tuple、集合set的in是通过值进行判断
字典dict中的in指的是key,不是value
五、逻辑运算符
and:与运算,真真为真,真假为假,假假为假,即and左右两边必须同时为真才为真。当and的左边为假时,不会执行右边的判断,当and的左边为真时,必须执行右边的判断
or:或运算,真真为真,真假为真,假假为假,即and左右两边只要有一个为真即为真。当or的左边为真时,不会执行右边的判断,当and的左边为假时,会执行右边的判断。
not:非运算,not a,如果a为True,返回False,反之,返回True。
进行逻辑运算时,None,0,‘’(空字符串)、[](空列表)、()(空元祖)、{}(空字典)、set()(空集合)均代表False
六、运算符的优先级(仅列举常用的运算符)
根据运算符分:()> 算数运算符 > 比较运算符 > 赋值运算符 > 成员运算符 > 逻辑运算符。
算数运算符内部:** 优于 *、/、//、% 优于 +、-
比较运算符内部:>、>=、<、<= 优于 ==、!=
逻辑运算符:not 优于 and 优于 or