【1】算数运算符
| 运算符 |
说明 |
实例 |
结果 |
| + |
加 |
1+1 |
2 |
| - |
减 |
1-1 |
0 |
| * |
乘 |
1*3 |
3 |
| / |
除法(和数学中的规则一样) |
4/2 |
2 |
| // |
整除(只保留商的整数部分) |
7 // 2 |
3 |
| % |
取余,即返回除法的余数 |
7 % 2 |
1 |
| ** |
幂运算/次方运算,即返回 x 的 y 次方 |
2 ** 4 |
16,即 24 |
【2】赋值运算符
| 运算符 |
说 明 |
用法举例 |
等价形式 |
| = |
最基本的赋值运算 |
x = y |
x = y |
| += |
加赋值 |
x += y |
x = x + y |
| -= |
减赋值 |
x -= y |
x = x - y |
| *= |
乘赋值 |
x *= y |
x = x * y |
| /= |
除赋值 |
x /= y |
x = x / y |
| %= |
取余数赋值 |
x %= y |
x = x % y |
| **= |
幂赋值 |
x **= y |
x = x ** y |
| //= |
取整数赋值 |
x //= y |
x = x // y |
| &= |
按位与赋值 |
x &= y |
x = x & y |
| |= |
按位或赋值 |
x |= y |
x = x | y |
| ^= |
按位异或赋值 |
x ^= y |
x = x ^ y |
| <<= |
左移赋值 |
x <<= y |
x = x << y,这里的 y 指的是左移的位数 |
| >>= |
右移赋值 |
x >>= y |
x = x >> y,这里的 y 指的是右移的位数 |
【3】比较运算符
| 比较运算符 |
说明 |
| > |
大于,如果>前面的值大于后面的值,则返回 True,否则返回 False。 |
| < |
小于,如果<前面的值小于后面的值,则返回 True,否则返回 False。 |
| == |
等于,如果==两边的值相等,则返回 True,否则返回 False。 |
| >= |
大于等于(等价于数学中的 ≥),如果>=前面的值大于或者等于后面的值,则返回 True,否则返回 False。 |
| <= |
小于等于(等价于数学中的 ≤),如果<=前面的值小于或者等于后面的值,则返回 True,否则返回 False。 |
| != |
不等于(等价于数学中的 ≠),如果!=两边的值不相等,则返回 True,否则返回 False。 |
| is |
判断两个变量所引用的对象是否相同,如果相同则返回 True,否则返回 False。 |
| is not |
判断两个变量所引用的对象是否不相同,如果不相同则返回 True,否则返回 False。 |
【4】逻辑运算符
| 逻辑运算符 |
含义 |
基本格式 |
说明 |
| and |
逻辑与运算 |
a and b |
当 a 和 b 两个表达式都为真时,a and b 的结果才为真,否则为假。 |
| or |
逻辑或运算 |
a or b |
当 a 和 b 两个表达式都为假时,a or b 的结果才是假,否则为真。 |
| not |
逻辑非运算 |
not a |
如果 a 为真,那么 not a 的结果为假;如果 a 为假,那么 not a 的结果为真。相当于对 a 取反。 |
print(2>1 and 1==2) # False
print(not 3<5) # False
print(not(4<2) or 1==2) # True
值得注意的是逻辑运算符有一套很好玩的短路算法
print(2 and 1)
print(0 and 1)
print(0 or 1)
print(3 or 5)