_ _DEL_ _()方法

创建对象后,python解释器默认调用_ _init_ _()方法;
当删除一个对象时,python解释器也会默认调用一个方法,这个方法为_ _del_ _()方法
class Person(object):
    #初始化方法,创建对象会被自动调用
    def __init__(self, name):
        print("__init__方法被调用")
        self.__name = name 
    #析构方法:当对象删除是会被调用
    def __del__(self):
        print("__del__方法被调用")
    def getName(self):
        return self.__name
    def setName(self,newName):
        if len(newName)>=5:
            self.__name = newName
        else:
            print("Error:输入的名字长度不够")
xiaoming = Person("Se7eN")
print("------马上删除xiaoming------")
del xiaoming
laowang = Person("laowang")
laowang2 = laowang
laowang3 = laowang
print("------马上删除laowang------")
del laowang
print("------马上删除laowang2------")
del laowang2
print("------马上删除laowang3------")
del laowang3相关推荐:《Python视频教程》
运行结果为:
__init__方法被调用 ------马上删除xiaoming------ __del__方法被调用 __init__方法被调用 ------马上删除laowang------ ------马上删除laowang2------ ------马上删除laowang3------ __del__方法被调用
说明:
当有1个变量保存了对象的引用时,此对象的引用计数就会加1。
当使用del删除变量指向的对象时,如果对象的引用计数不为1,比如3,那么此时只会让这个对象的引用计数减1,即变为2,当再次调用del时,变为1,如果在调用1次的时候,此时才会把对象删除。
相关推荐:
python的魔法方法是什么
                网站名称:创新互联Python教程:python删除对象的方法是什么
                
                地址分享:http://www.csdahua.cn/qtweb/news0/416950.html
            
网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网