进阶教程
可重载运算符完整列表
Python运算符重载指南:可重载运算符完整列表
摘要
Python中的运算符重载指在类中定义与运算符对应的处理方法,使同一运算符在不同类型上表
Python 列表通过加法运算符实现元素扩展,字符串则用于拼接内容。同样的加号作用于不同序列类型,结果却天差地别。这背后的原因是什么?

核心机制并不复杂。Python 内部,每种序列类型本质上都是一个类——列表是 list 类,字典是 dict 类。这些类能让同一运算符展现不同行为,靠的是「运算符重载」技术。
运算符重载,就是在类中定义并实现与运算符对应的处理方法。当对类对象执行运算符操作时,Python 自动调用类中对应的方法进行实际处理。
来看一个具体示例:
运行这段代码,输出结果如下:
name:Anna;age:42
name:Anna;age:42
name:Anna;age:42
False
name:Anna;age:65
示例中,MyClass 重载了 __repr__、__str__、__lt__ 和 __add__ 四个方法。实例化 myc 和 mycl 两个对象后,调用 repr()、str()、比较及加法操作时,Python 自动调用类中对应的重载方法,而非默认处理逻辑。
那么,Python 类到底支持重载哪些运算符?下面这张常用表列出了常见的可重载运算符及其含义,值得收藏。
来源:互联网
免责声明
本网站新闻资讯均来自公开渠道,力求准确但不保证绝对无误,内容观点仅代表作者本人,与本站无关。若涉及侵权,请联系我们处理。本站保留对声明的修改权,最终解释权归本站所有。