python 特殊方法

python

#python中通过实现这些特殊方法从而实现一些‘特定的功能’,这些方法不是给用户用的,
#python解释器再给类初始化时会同时初始化这些方法

class Parent:

pass

class Test:

__slots__ = [] #属性控制列表

def __init__(self, **kwargs):

for k, v in kwargs.items():

setattr(self, k, v)

#删除一个属性被调用

def __delattr__(self, item):

print(item)

#增加一个属性被调用

def __setattr__(self, key, value):

print(key, value)

#支持类索引器

def __setitem__(self, key, value):

pass

def __delitem__(self, key):

pass

#可以通过类实例调用自定义方法

def __call__(self, *args, **kwargs):

pass

#可以通过类实例输出自定义文本信息,用于调试输出

def __str__(self):

pass

#跟__str__ 的区别是用户内部数据传递

def __repr__(self):

pass

#类初始化最开始被调用的地方,可以用与单一模式等

def __new__(cls, *args, **kwargs):

pass

# 支持iter

def __iter__(self):pass

# 支持itor

def __next__(self):pass

#重写 ==

def __eq__(self, other):pass

t = Test(name='zhangsan', heigth=180)

以上是 python 特殊方法 的全部内容, 来源链接: utcz.com/z/387524.html

回到顶部