本例子对Python的加法运算符进行重载,让其可以应用在自定义的类实例上。
首先是新建一个自定义类:
自定义类对打印函数print进行重载:
即在自定义类中,重定义函数__str__
注意其返回值要是一个字符串,所以使用了内建函数str将整数装换成字符串,不加这个str函数Python会报错的。
对加法运算符进行重载
不过要注意有两个函数需要重载。因为加法是一个二元运算符,所以自定义类的实例可能是在加号的左边(重载__add__),也可能出现在加法的右边(重载__radd__)。
对加法运算符重载注意点:重载后的加法运算符,返回的还是你自定义类的一个实例!
加上测试代码:
完整代码运行结果如图:
网友评论