首页 > 其他 > 详细

面向对象-内置方法

时间:2018-12-31 11:16:24      阅读:116      评论:0      收藏:0      [点我收藏+]
class Foo:
    def __init__(self,name,age):
        self.name=name
        self.age=age
    def __getitem__(self,item):
        print(getitem)
        print(item)
        return self.__dict__.get(item)

    def __setitem__(self, key, value):
        print(setitem)
        print(key,value)
        self.__dict__[key]=value

    def __delitem__(self, key):
        print(delitem)
        print(key)
        # self.__dict__.pop(key)
        del self.__dict__[key]

obj=Foo(egon,18)

 

#查看属性:
obj[name]  # 相当于obj.name
obj[age]

#设置属性
obj[sex]=male  #相当于 obj.sex=‘male‘

print(obj.__dict__)
print(obj.sex)  # 为增加的 ‘male

#删除属性
del obj.name
del obj[age]
print(obj.__dict__)


# str 用法
d=dict({name:egon})
print(isinstance(d,dict))
print(d)

 

class People:
    def __init__(self,name,age):
        self.name=name
        self.age=age

    def __str__(self):  #核心
        print(---->str)
        return name:%s,age:%s%(self.name,self.age) #核心

obj=People(egon,18)
print(obj)

#__del__
f=open(settings.py)  # 操作系统打开了
f.read()
f.close() #回收操作系统的资源
print(f)

 

class Open:
    def __init__(self,filename):
        print(open file)
        self.filename=filename

    def __del__(self):
        print(回收操作系统资源:self.close())

f=Open(settings.py)
# del f # f.__del__()
print(----main----)  # del f # f.__del__()

 

面向对象-内置方法

原文:https://www.cnblogs.com/hexiaorui123/p/10201527.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!