当前位置: 技术文章>> 详细介绍Python魔法方法

文章标题:详细介绍Python魔法方法
  • 文章分类: 后端
  • 10791 阅读
文章标签: python python教程

Python中的魔法方法(Magic methods)是特殊的方法,它们以双下划线(__)开头和结尾,如__init__()、__str__()、__len__()等等。魔法方法允许开发者自定义类的行为,例如使对象能够进行加法、减法、比较等操作,也可以自定义类的初始化、转换成字符串等操作。


以下是Python中常用的魔法方法:


__init__(self, ...):类的初始化方法,当创建对象时调用,用于对对象的属性进行初始化。


__str__(self):返回对象的字符串表示形式,通常用于调试和日志记录。


__repr__(self):返回对象的“官方”字符串表示形式,通常用于开发者调试和交互式环境。


__len__(self):返回对象的长度。


__getitem__(self, key):获取对象的某个元素,通常用于支持下标操作,如obj[0]。


__setitem__(self, key, value):设置对象的某个元素的值,通常用于支持下标赋值操作,如obj[0] = 1。


__delitem__(self, key):删除对象的某个元素,通常用于支持下标删除操作,如del obj[0]。


__contains__(self, item):判断对象是否包含某个元素,通常用于支持in操作。


__eq__(self, other):判断对象是否等于另一个对象,通常用于支持==操作。


__ne__(self, other):判断对象是否不等于另一个对象,通常用于支持!=操作。


__lt__(self, other):判断对象是否小于另一个对象,通常用于支持<操作。


__gt__(self, other):判断对象是否大于另一个对象,通常用于支持>操作。


__le__(self, other):判断对象是否小于等于另一个对象,通常用于支持<=操作。


__ge__(self, other):判断对象是否大于等于另一个对象,通常用于支持>=操作。


__add__(self, other):用于对象相加,如obj1 + obj2。


__sub__(self, other):用于对象相减,如obj1 - obj2。


__mul__(self, other):用于对象相乘,如obj1 * obj2。


__truediv__(self, other):用于对象相除,如obj1 / obj2。


__floordiv__(self, other):用于对象整除,如obj1 // obj2。


__mod__(self, other):用于对象取模,如obj1 % obj2


推荐文章