在Python中,魔法函数(或特殊方法)是具有双下划线开始和结束的特殊函数,用于定义类的行为和操作。以下是一些常用的Python魔法函数:
__init__(self, ...)
: 初始化对象,在创建实例时被调用。
__str__(self)
: 返回对象的字符串表示形式,可通过str()
函数或print()
语句调用。
__repr__(self)
: 返回对象的“官方”字符串表示形式,可通过repr()
函数调用。
__len__(self)
: 返回对象的长度,可通过len()
函数调用。
__getitem__(self, key)
: 返回索引或键对应的值,可通过下标或键访问对象。
__setitem__(self, key, value)
: 设置索引或键对应的值。
__delitem__(self, key)
: 删除索引或键对应的值。
__iter__(self)
: 返回可迭代对象,例如在for循环中使用。
__next__(self)
: 定义迭代器的下一个值。
__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)
: 定义加法操作符+
。
__sub__(self, other)
: 定义减法操作符-
。
__mul__(self, other)
: 定义乘法操作符*
。
__div__(self, other)
: 定义除法操作符/
。
这只是一小部分常用的魔法函数,Python还有许多其他魔法函数可以用于自定义类的行为和操作。