魔法属性
doc
表示类的描述信息
module
表示当前此操作的对象
class
当前操作的对象的类是什么
dict
类或对象中的所有属性
getattr(self,name)
当用户试图获取一个不存在的属性时候的行为
getattribute(self,name)
当该类的的属性被访问的时候的行为
setattr(self,name,value)
当一个属性被设置时候的行为
delattr(self,name)
当一个属性被删除时候的行为
del obj.a
delattr(obj,"a")
dir(self)
当被dir()调用的时候的行为
get(self,instance,owner)
当描述符的值被取得的行为
set(self,instance,value)
当描述符的值被改变的时候的行为
delete(self,instance)
当描述符的值被删除时的行为
魔法方法
init
初始化方法,通过类创建对象时,自动触发执行
new
真正实力化对象的方法,将创建出来的对象传给__init__进行初始化
del
当对象在内存中被释放时,自动触发执行
call
在实例化出来的对象后面加括号的时候,执行这个函数。
str
如果类中定义了__str__方法,那么在打印对象时,默认输出该方法的返回值
len
当对象被len()时调用的方法
repr
当对象被repr()的时候调用的方法
python的repr(obj) 方法是返回obj的string形式
比如
s = 'runoob'
print(repr(s)) # " 'runoob' "
dict = {"a":1}
print(repr(dict)) # '{"a":1}'
bytes
当被bytes()调用时的行为
bytes()函数是python的内置方法,调用的时候需要传入编码格式,结果输出为bytes格式
例如:
print(bytes("中文","utf-8")) # b'\xe4\xb8\xad\xe6\x96\x87'
format
当被format()调用的时候的行为
bool
当被bool()调用时候的行为应该返回True或False