目标
掌握常用运算符的作用
运算符的分类
- 算数运算符
- 赋值运算符
- 复合赋值运算符
- 比较运算符
- 逻辑运算符
1.算术运算符
| 运算符 | 描述 | 实例 |
|---|---|---|
| + | 加 | 1+1 输出结果为 2 |
| - | 减 | 1-1 输出结果为 0 |
| * | 乘 | 2*2 输出结果为 4 |
| / | 除 | 10/2 输出结果为 5 |
| // | 整除 | 9//4 输出结果为 2 |
| % | 取余 | 9%4 输出结果为 1 |
| ** | 指数 | 2*4 输出结果为 16,即2222 |
| () | 小括号 | 小括号用来提高运算优先级,即(1+2)*3 输出结果为 9 |
注意:
- 混合运算优先级顺序:()高于*高于 / // % 高于+ -
2.赋值运算符
| 运算符 | 描述 | 实例 |
|---|---|---|
| = | 赋值 | 将=右侧的结果赋值给等号左侧的变量 |
单个变量赋值
num=1print=(num)
多个变量赋值
num1, float1, str1 = 10, 0.5, 'hello world'print(num1)print(float1)print(str1)
结果如下

多个变量赋相同值
a=b=100print(a)print(b)
结果如下:

3.复合赋值运算符
优先级:
1.先算复合赋值运算符右侧的表达式
2.再算复合赋值运算符的算数运算
3.最后算赋值运算
| 运算符 | 描述 | 实例 |
|---|---|---|
| += | 加法赋值运算符 | c += a 等价于 c = c + a |
| -= | 减法赋值运算符 | c -= a 等价于 c = c - a |
| *= | 乘法赋值运算符 | c = a 等价于 c = c a |
| /= | 除法赋值运算符 | c /= a 等价于 c = c / a |
| //= | 整除法赋值运算符 | c //= a 等价于 c = c // a |
| %= | 取值法赋值运算符 | c %= a 等价于 c = c % a |
| **= | 幂法赋值运算符 | c = a 等价于 c = c a |
a = 100a +=1# 输出101 a = a + 1,最终 a = 100 + 1print(a)

4.比较运算符
比较运算符也叫关系运算符,通常用来判断。返回结果有两种False and True(布尔型)
| 运算符 | 描述 | 实例 |
|---|---|---|
| == | 判断相等。如果两个操作数的结果相等,则条件结果为真(True),否则条件结果为假(False) | 如a=3,b=3,则(a == b)为True |
| != | 不等于。如果两个操作数的结果不相等,则条件结果为真(True),否则条件结果为假(False) | 如a=1, b=3, 则(a != b)为True |
| > | 运算符左侧操作数结果是否大于右侧操作数结果,如果大于,则条件为真,否则为假 | 如a=7, b=3, 则(a > b) 为 True |
| < | 运算符左侧操作数结果是否小于右侧操作数结果,如果小于,则条件为真,否则为假 | 如a=7, b=3, 则(a < b) 为 False |
| >= | 运算符左侧操作数结果是否大等于右侧操作数结果,如果大于,则条件为真,否则为假 | 如a=7, b=3, 则(a >= b) 为 True |
| <= | 运算符左侧操作数结果是否小等于右侧操作数结果,如果小于,则条件为真,否则为假 | 如a=3, b=3, 则(a <= b) 为 True |

5.逻辑运算符
| 运算符 | 逻辑表达式 | 描述 | 实例 |
|---|---|---|---|
| and | x and y | 布尔“与”:如果 x 为 False,x and y 返回 False,否则它返回 y 的值 | True and False,返回 False |
| or | x or y | 布尔“或”:如果 x 为 True,返回True,否则它返回 y 的值 | True or False,返回 True |
| not | not x | 布尔“非”:如果 x 为 True,返回 False,如果 x 为 False,返回 True | not True 返回 False,not False 返回 True |
5.1拓展:数字之间的逻辑运算
a = 0b = 1c = 2# and 运算符,只要有一个值为0,则结果为0,否则结果为最后一个非0数字print(a and b) # 0print(b and a) # 0print(a and c) # 0print(c and a) # 0print(b and c) # 2print(c and b) # 1# or运算符,只有所有值为0结果才为0,否则结果为第一个非0数字print(a or b) # 0print(a or c) # 2print(b or c) # 1
