Python 中的专有方法(或魔术方法、双下方法)使得类能够支持内置的操作符、函数和内置类型的行为。以下是这些方法的详细解释和例子:
__init__
: 构造函数
构造函数,在生成对象时调用。
class MyClass:
def __init__(self, value):
self.value = value
obj = MyClass(10)
print(obj.value) # 输出: 10
__del__
: 析构函数
析构函数,释放对象时调用。
class MyClass:
def __init__(self, value):
self.value = value
def __del__(self):
print(f'对象 {
self.value} 被删除')
obj = MyClass(10)
del obj # 输出: 对象 10 被删除
__repr__
: 打印,转换
返回一个对象的字符串表示形式,通常用于调试。
class MyClass:
def __init__(self, value):
self.value = value
def __repr__(self):
return f'MyClass(value={
self.value})'
obj = MyClass(10)
print(obj) # 输出: MyClass(value=10)
__setitem__
: 按照索引赋值
允许对象通过索引进行赋值。
class MyList:
def __init__(self):
self.data = {
}