1 算术运算符


算术运算符
python # 加法 ‘+’ print(5 + 6) # 减法 ‘-’ print(5 - 6) # 乘法 ‘*’ print(5 * 6) # 除法 ‘/’ print(5 / 6) # 取模 ‘%’ (余数) print(5 % 6) print(-5 % 6) print(5 % -6) print(-5 % -6) # 整除 ‘//’ (商) print(5 // 6) print(-5 // 6) print(5 // -6) print(-5 // -6) # 幂 ‘**’ print(5 ** 6) python 11 -1 30 0.8333333333333334 5 1 -1 -5 0 -1 # 负数整除 向下取整 -1 0 15625

2 赋值运算符


赋值运算符
python # 正常赋值 ‘=’ a = 7 print(a) # 加法赋值 ‘+=’ a = 7 a += 3 print(a) # 减法赋值 ‘-=’ a = 7 a -= 3 print(a) # 乘法赋值 ‘*=’ a = 7 a *= 3 print(a) # 除法赋值 ‘/=’ a = 7 a /= 3 print(a) # 取模赋值 ‘%=’ a = 7 a %= 3 print(a) # 整除赋值 ‘//=’ a = 7 a //= 3 print(a) # 幂赋值 ‘**=’ a = 7 a **= 3 print(a) python 7 10 4 21 2.3333333333333335 1 2 343

3 比较运算符


比较运算符
python # 等于 ‘==’ print(7 == 3) # 不等于 ‘!=’ print(7 != 3) # 大于 ‘>’ print(7 > 3) # 小于 ‘<’ print(7 < 3) # 大于等于 ‘>=’ print(7 >= 3) # 小于等于 ‘<=’ print(7 <= 3) python False True True False True False

4 位运算符


  1. # a = 0011 1100 = 128*0 + 64*0 + 32*1 + 16*1 + 8*1 + 4*1 + 2*0 + 1*0 = 60
  2. # b = 0000 1101 = 128*0 + 64*0 + 32*0 + 16*0 + 8*1 + 4*1 + 2*0 + 1*1 = 13
  3. a = 60
  4. b = 13
分类 运算符 描述 示例 二进制原码 输出 注释(对比二进制各位数值)
print(a) 0011 1100 60
print(b) 0000 1101 13
按位运算符 & 按位与运算符 print(a & b) 0000 1100 12 对应位都为1,该位为1;其一为0,该位为0
` ` 按位或运算符 `print(a b)` 0011 1101 61 对应位都为0,该位为0;其一为1,该位为1
^ 按位异或运算符 print(a ^ b) 0011 0001 49 对应位相等,该位为0;不相等,该位为1
~ 按位取反运算符 print(~a) 1100 0011(补码) -61 1. 二进制补码形式,0110,首位为符号;
1100 0010(减1) 2. 负数输出时,先将补码减1;
1011 1101(再取反) 3. 再取反。(可简单记做~a = -(a + 1)
移位运算符 << 左移动运算符 print(a<<2) 1111 0000 240 各位1的位置向左移动2个单位。
>> 右移动运算符 print(a>>2) 0000 1111 15 各位1的位置向右移动2个单位。
  1. # 按位异或运算符
  2. a = 0b0111100
  3. b = 0b00001101
  4. print(a ^ b) # 返回:49

5 逻辑运算符


逻辑运算符
```python # 布尔与 ‘and’ ‘&’ print(True and False) print(True & False) # 布尔或 ‘or’ ‘ ’ print(True or False) print(True False) # 布尔非 ‘not’ print(not True) ``` python False False True True False
and/& True False or/` ` True False not not
True True False True True True True False
False False False False True False False True

6 成员运算符


成员运算符
python # 成员运算符 ‘in’ ‘not in’ list1 = list(range(1, 8)) print(3 in list1) print(3 not in list1) python True False
复合数据类型成员
python # 元组 识别 print(1 in (1,2,3)) # 列表 识别 print(1 in [1,2,3]) # 集合 识别 print(1 in range(5)) # 字典 key 识别 print(1 in {1,2,3}) print(1 in {1:'a',2:'b',3:'c'}) # 字典 item 不识别 print('a' in {1:'a',2:'b',3:'c'}) python True True True True True False

7 身份运算符


身份运算符
python # int 同一性判断 a = 123 b = 123 print(a is b) # float 同一性判断 a = 1.23 b = 1.23 print(a is b) # 字符串 同一性判断 a = '123' b = '123' print(a is b) # 列表 同一性判断 a = [1, 2, 3] b = [1, 2, 3] print(a is b) # 元组 同一性判断 a = 1, 2, 3 b = (1, 2, 3) print(a is b) python True True True False True

8 运算符优先级


括号 符号 算术运算符 位运算符 比较运算符 赋值运算符 身份运算符 成员运算符 逻辑运算符
() **指数 ~按位取反
+
-
*
/
%取模
//取整数
+
-
>>右移
<<左移
&按位与 ^按位异或
`
`按位或 <=小于等于
<小于
>大于
>=大于等于
<>不等于
==等于
!=不等于
=正常赋值
%=取模赋值
/=除法赋值
//=整除赋值
-=减法赋值
+=加法赋值
*=乘法赋值
**=幂赋值
is
is not
in
in not
not布尔与
and布尔或
or布尔非