1.__del__方法:
作用:
当使用类名()创建对象时,为对象分配完空间后,会自动调用__init__方法,当对象被从内存中销毁前,__del__方法会被自动调用
应用场景:
__init__方法可以重新设置初始化方法,可以让创建的对象更加灵活,方法内部使用self.属性=形参
__del__方法可以在对象被销毁前,在做一些事情
class Pig:
def __init__(self, name):
self.name = name
print('%s来了' % self.name)
def __del__(self):
print('%s 走了' % self.name)
pigi = Pig('pigi')
print(pigi.name)
#删除对象
del pigi
打印结果:
pigi来了
pigi
pigi 走了
2.__str__方法
在python中,使用print输出对象变量,默认情况下,会输出这个变量引用的对象即类对象(由类创建的对象),及其在内存中的地址(十六进制),print(Pig())如<__main__.Pig object at 0x00000218672E5D68>,print(Pig)<class '__main__.Pig'>
如果在实际工作中,想用print输出时,可以自定义打印内容,则可以利用__str__这个内置方法
class Pig:
def __init__(self, new_name):
self.name = new_name
print('%s来了' % self.name)
def __del__(self):
print('%s 走了' % self.name)
def __str__(self):
return '我是小猪猪 %s' % self.name
pigi = Pig('pigi')
print(pigi)
打印结果:
==================
pigi来了
我是小猪猪 pigi
3.对象的生命周期
一个对象从调用类名()创建,--生命周期开始
一个对象的__del__方法一旦被调用,--生命周期结束
在对象的生命周期内,可以访问对象的属性或让属性调用方法
转载于:https://www.cnblogs.com/godlove/p/10073995.html
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)