python3 类中的运算符重载

#工厂函数
#运算符重载的方法

class Try_str(str):
    def __add__(self, other):
        return int(self) + int(other)

    def __sub__(self, other):
        return int(self) - int(other)
    '''
    下面这些都可以进行运算符的重载
    def __mul__(self, other):  乘法

    def __truediv__(self, other):真除法,即/

    def __floordiv__(self, other): 整除,即//

    def __mod__(self, other):  取模 ,即%

    def __divmod__(self, other): 定义当被divmod()调用时的行为,即,取余数

    def __pow__(self, power, modulo=None): 定义当被power()调用或者**运算时的行为

    def __lshift__(self, other): 定义左移

    def __rshift__(self, other):右移

    def __and__(self, other): 按位与

    def __xor__(self, other): 按位异或

    def __or__(self, other): 按位或
    '''

if __name__ == '__main__':
    a = Try_str('123')
    b = Try_str('12')
    print(a+b)
    print(a-b)

你可能感兴趣的:(python学习,python,运算符重载)