运算符重载

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了运算符重载相关的知识,希望对你有一定的参考价值。

常见的运算符重载方法

__init__  构造函数  对象建立:X = Class(args)

__del__  析构函数  X对象收回

__add__  +  X+Y

__or__  |  X | Y

__str__  打印转换  print(X)

__call__  函数调用  X(*args, **kargs)

__getattr__  点号运算  X.undefined

__setattr__  属性赋值语句  X.any = value

__delattr__  属性删除  del X.any

__getattribute__  属性获取  X.any

__getitem__  索引运算  X[key], X[i:j]

__setitem__  索引赋值  X[key] = value, X[i:j] = sequence

__delitem__  索引和分片删除  del X[key], delX[i:j]

__len__  长度  len(X)

__bool__  布尔测试  bool(X)

__lt__, __gt__,__le__, __ge__, __eq__, __ne__   特定的比较  X<Y, X>Y, X<=Y, X>=Y, X==Y, X!=Y

__radd__  右侧加法  other+X

__iadd__  原地加法  X += Y

__iter__, __next__  迭代环境  I=iter(X), next(I)

__contains__  成员关系测试  item in X

__index__  整数值

__enter__, __exit__  环境管理器

__get__, __set__  描述符属性

__new__  创建  在__init__之前创建对象

以上是关于运算符重载的主要内容,如果未能解决你的问题,请参考以下文章

运算符重载1

什么运算符一定要重载友元函数,什么时候一定要重载为成员函数?

利用运算符重载实现Date类

C++运算符重载

运算符重载

运算符重载与const对象