Python 常见运算符详解:从入门到熟练使用
在 Python 中,运算符就是用来完成某种运算的符号。例如,+ 用来加法,> 用来比较大小,and 用来组合条件。
对于初学者,建议按照下面的顺序学习:
- 算术运算符:计算数值。
- 比较运算符:比较大小、判断相等。
- 赋值运算符:给变量赋值、更新变量。
- 逻辑运算符:组合多个条件。
- 成员运算符:判断元素是否存在。
- 身份运算符:判断两个变量是否指向同一个对象。
- 位运算符:直接操作整数的二进制位。
- 运算符优先级:多个运算符同时出现时,确定计算顺序。
一、算术运算符
算术运算符用于进行数学计算,是 Python 初学者最先接触的一类运算符。
| 运算符 | 名称 | 示例 | 结果 |
|---|---|---|---|
+ | 加法 | 10 + 3 | 13 |
- | 减法 | 10 - 3 | 7 |
* | 乘法 | 10 * 3 | 30 |
/ | 除法 | 10 / 3 | 3.333... |
// | 整除(向下取整) | 10 // 3 | 3 |
% | 取余 | 10 % 3 | 1 |
** | 幂运算 | 2 ** 3 | 8 |
1. 加法、减法、乘法
a = 10
b = 3
print(a + b) # 13
print(a - b) # 7
print(a * b) # 30
这里要注意,+ 不仅可以做数字加法,还可以拼接字符串:
print("Python" + "入门") # Python入门
但不能直接将字符串和整数相加:
print("年龄:" + 18) # TypeError
2. 除法 /
/ 表示普通除法,即使两个数能够整除,结果通常也是 float 类型。
print(10 / 2) # 5.0
print(7 / 2) # 3.5
print(type(10 / 2)) # <class 'float'>
应用场景:计算平均数、单价、比例等。
3. 整除 //
// 表示向下取整除法。它不是简单地删除小数部分,而是将商向负无穷方向取整。
print(10 // 3) # 3
print(9 // 2) # 4
print(-10 // 3) # -4
为什么 -10 // 3 是 -4?
因为:
[ -10 \div 3 \approx -3.333 ]
向下取整后是 -4,而不是 -3。
典型应用: 将总秒数转换为小时、将总数量转换为整箱数、计算某个数字的十位或百位。
seconds = 3675
hours = seconds // 3600
minutes = seconds % 3600 // 60
remaining_seconds = seconds % 60
print(hours, minutes, remaining_seconds) # 1 1 15
4. 取余 %
% 用于求除法的余数。
print(10 % 3) # 1
print(12 % 4) # 0
print(7 % 2) # 1
它最常见的用途有三个:
用途一:判断奇偶数
num = 7
if num % 2 == 0:
print("偶数")
else:
print("奇数")
用途二:判断能否整除
num = 15
if num % 5 == 0:
print("能被 5 整除")
用途三:提取整数的某一位数字
num = 583
ones = num % 10
tens = num // 10 % 10
hundreds = num // 100
print(ones) # 3
print(tens) # 8
print(hundreds) # 5
注意:Python 的取余结果与除数的符号有关。例如,-10 % 3 的结果是 2,因为 Python 的整除和取余遵循同一套计算关系。
5. 幂运算 **
** 表示乘方。
print(2 ** 3) # 8
print(5 ** 2) # 25
print(9 ** 0.5) # 3.0
其中:
2 ** 3表示 2 的 3 次方。5 ** 2表示 5 的平方。9 ** 0.5可以用于计算 9 的平方根。
注意,^ 不是乘方运算符,它是后面要讲的位运算符。