1、init
用于初始化对象的属性和状态
当创建一个对象时,Python会自动调用该对象的__init__
方法。
这个方法用于初始化对象的属性和状态,是对象创建过程中的一个重要环节
2、new
# 通常我们不需要重写__new__方法,除非我们正在进行一些非常特殊的操作,例如单例模式等
class MyClass: def __new__(cls, *args, **kwargs): instance = super(MyClass, cls).__new__(cls) # 在这里进行一些额外的初始化操作 return instance def __init__(self, name): self.name = name
2、del
删除对象时调用的特殊方法
当一个对象不再被引用时,Python会自动调用该对象的__del__
方法。
这个方法通常用于释放对象所占用的资源,例如关闭文件、断开网络连接等
class MyClass: def __init__(self): self.file = open("example.txt", "r") def __del__(self): self.file.close() obj = MyClass() # 使用obj读取文件内容... del obj # 删除obj时,会自动调用__del__方法关闭文件
3、setitem
允许对象使用索引运算符 [] 进行赋值
def __setitem__(self, key, value):self.__dict__[key] = value
4、getitem
允许对象使用索引运算符 [] 进行访问
5、setattr
tig = "test"
# 设置属性 相当于self.kind = tig
self.__setattr__('kind', tig)
6、getattr
7、str
返回对象的字符串表示形式
8、repr
返回对象的官方字符串表示形式
9、len
返回对象的长度或包含的元素个数
10、iter
11、next
12、call
允许一个对象像函数一样被调用
add()、sub()、mul()等:用于定义对象之间的加、减、乘等运算行为
delitem():允许对象使用索引运算符 [] 进行删除。
eq()、ne()、lt()等:用于定义对象之间的比较行为。