python operator

1. 算术 运算符

假设以下变量 a = 10, b = 20

运算符 描述 实例
+ 加 - 两个对象相加 a + b 输出结果 30
- 减 - 两个对象相减 a - b 输出结果 -10
* 乘 - 两个对象或是返回一个被重复若干次的字符串 a * b 输出结果 200
/ 除 - b 除以 a b / a 输出结果 2
% 取模 - 返回除法余数 b % a 输出结果 0
** 幂 - 返回 a的b次幂 a ** b 为10的20次幂 输出结果 100000000000000000000
// 取整除 - 返回商的整数部份 9 / 2 输出结果4,9.0 / 2.0 输出结果4.0

2. 重载 运算符

以下是比较常用的重载运算符

2.1. 数学类运算符

表达式 方法名 描述
x + y __add__() 加法
x - y __sub__() 减法
x * y __mul__() 乘法
x / y __div__() 除法
x == y __eq__() 相等
x > y __gt__() 大于
x >= y __ge__() 大于等于
x < y __lt__() 小于
x <= y __le__() 小于等于
x != y __ne__() 不等于

2.2. 序列运算符

表达式 方法名 描述
len(x) __len__() 序列长度
x in y __contains__() 序列是否包含x
print x [key] __getitem__() 访问序列x 中的元素 key
x [key] = y __setitem__() 将序列x 中元素key 的值设为y

2.3. 通用类运算符

表达式 方法名 描述
x = my_class() __init__() 构造函数
print(x)
str(x) __str__() 转化为可读的字符串
__repr__() 显示x
__del__() 当x作为垃圾回收时的终结器