当前位置: 首页 > 网络知识

Python基础入门学习笔记 043 魔法方法:算术运算2

时间:2026-01-29 09:25:55
实例1: 1 >>> class int(int): 2 def __add__(self,other): 3 return int.__sub__(self,other) 4 5 6 >>> a = int(3) 7 >>> b = int(2) 8 >>> a + b 9 1

反运算:

反运算与算术运算符的不同之处是,反运算多了一个'r',例如 __add__()的反运算对应为 __radd__()

>>> a + b

这里a是加数,b是被加数,如果a对象的__add__()方法没有实现或者不支持相应的操作,那么python就会自动调用b的__radd__()方法

实例:

1 >>> class Nint(int): 2 def __radd__(self,other): 3 return int.__sub__(self,other) 4 5 6 >>> a = Nint(5) 7 >>> b = Nint(3) 8 >>> a + b #由于a对象默认有__add__()方法,所以b的__radd__()没有执行 9 8

实例2:

1 >>> class Nint(int): 2 def __radd__(self,other): 3 return int.__sub__(self,other) 4 5 6 >>> b = Nint(5) 7 >>> 3 + b #由于3无__add__()方法,所以执行b的反运算__radd__(self,other)方法,其中self是b对象 8 2

注:在重写反运算魔法方法时,一定要注意顺序问题。

增量赋值运算:

比较操作符:

其它操作符:



上一篇:Python基础入门学习笔记 051 模块:__name__='__main__'、搜索路径和包
下一篇:Python基础入门学习笔记 068 GUI的终极选择:Tkinter5
python
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器
  • 英特尔第五代 Xeon CPU 来了:详细信息和行业反应
  • 由于云计算放缓引发扩张担忧,甲骨文股价暴跌
  • Web开发状况报告详细介绍可组合架构的优点
  • 如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳
  • 美光在数据中心需求增长后给出了强有力的预测
  • 2027服务器市场价值将接近1960亿美元
  • 生成式人工智能的下一步是什么?
  • 分享在外部存储上安装Ubuntu的5种方法技巧
  • 全球数据中心发展的关键考虑因素
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器

    英特尔第五代 Xeon CPU 来了:详细信息和行业反应

    由于云计算放缓引发扩张担忧,甲骨文股价暴跌

    Web开发状况报告详细介绍可组合架构的优点

    如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳

    美光在数据中心需求增长后给出了强有力的预测

    2027服务器市场价值将接近1960亿美元

    生成式人工智能的下一步是什么?

    分享在外部存储上安装Ubuntu的5种方法技巧

    全球数据中心发展的关键考虑因素