2. 算数运算符进阶细节
-
/与//的区别:-
a / b永远返回浮点数(即使整除),例如6 / 2 = 3.0 -
a // b是「地板除」(向下取整),结果类型与操作数一致:python
运行
print(7 // 2) # 3(整数) print(7.0 // 2) # 3.0(浮点数) print(-7 // 2) # -4(负数向下取整,而非四舍五入)
-
-
**幂运算:支持小数幂(开方)、负数幂,优先级高于正负号:python
运行
print(2 ** 3) # 8(2^3) print(4 ** 0.5) # 2.0(开平方) print(2 ** -2) # 0.25(1/(2^2)) print(-3 ** 2) # -9(等价于 -(3^2),而非 (-3)^2) print((-3) ** 2)# 9(需加括号实现负数幂)
二、赋值运算符完整集合
| 运算符 | 示例 | 等价写法 | 适用场景 | |||
|---|---|---|---|---|---|---|
= | a = 5 | - | 基础赋值 | |||
+= | a += 3 | a = a + 3 | 加法赋值(支持数字、字符串拼接) | |||
-= | a -= 3 | a = a - 3 | 减法赋值 | |||
*= | a *= 3 | a = a * 3 | 乘法赋值(支持字符串重复) | |||
/= | a /= 3 | a = a / 3 | 除法赋值(结果为浮点数) | |||
//= | a //= 3 | a = a // 3 | 地板除赋值 | |||
**= | a **= 3 | a = a ** 3 | 幂运算赋值 | |||
%= | a %= 3 | a = a % 3 | 取模(余数)赋值 | |||
&= | a &= 3 | a = a & 3 | 按位与赋值 | |||
| ` | =` | `a | = 3` | `a = a | 3` | 按位或赋值 |
^= | a ^= 3 | a = a ^ 3 | 按位异或赋值 | |||
>>= | a >>= 2 | a = a >> 2 | 右移赋值 | |||
<<= | a <<= 2 | a = a << 2 | 左移赋值 |