python私有属性,私有方法,__del__魔术方法

classDog:

def__init__(self):

#私有属性,以双下划线开头,这样就没法以点的形式访问了

#这个属性只能用self.来访问,不能用dog.访问

self.__age =10

self.name ="shit"

defget_age(self):

returnself.__age

defset_age(self,age):

self.__age = age

defwant_fuck(self,money):

ifmoney >200:

self.__fuck()

else:

print("fuck yourself")

def__fuck(self):

"""私有方法,同样以双下划线开头"""

print("this is a private func,fuck you")

def__del__(self):

"""魔术方法,对象被真正销毁之前,真正的销毁才会回调这个,包括手动或者系统销毁"""

print("dog is dead")

def__str__(self):

return"live dog"

importtime

dog = Dog()

dog.set_age(44)

#调用私有变量

print(dog.get_age())

print(dog.name)

#调用私有方法

dog.want_fuck(300)

dog1 = dog

#实测,这个方法会删除对象,但是如果有多个引用,它只会删除某个引用,而不是真正销毁对象

# del dog

# time.sleep(5)

# print(dog)

importsys

#计算某对象的引用个数,但是它本身也会使引用个数加1

count = sys.getrefcount(dog1)

print(count)

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1.1面向对象 面向对象(object-oriented ;简称: OO)至今还没有统一的概念 我这里把它定义为:...
    TENG书阅读 675评论 0赞 0
  • 七月的风摇晃银铃... 送来两个南方天使... 我在最初心动的地方... 数着悠悠白云几行...
    归人沫念阅读 484评论 0赞 11
  • 简曰——倡导简约精致的生活方式…… 这本书的作者是史蒂芬.柯维,他的成名作《高效能人士的七个习惯》影响了全球...
    简曰健康生活阅读 432评论 0赞 0
  • 2013-01-02 1月1日早上,信息组集体去雍和宫。买票的时候没见着黄牛,也许是他们怕遭到佛祖的惩罚吧,抑或黄...
    韩日记阅读 453评论 0赞 2

友情链接更多精彩内容