python魔法方法

作者: 陆_志东 | 来源:发表于2018-06-06 14:17 被阅读0次

魔法属性

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

相关文章

网友评论

    本文标题:python魔法方法

    本文链接:https://www.haomeiwen.com/subject/kjhbsftx.html