码迷,mamicode.com
首页 > 其他好文 > 详细

面向对象-内置方法

时间:2018-12-31 11:26:19      阅读:158      评论:0      收藏:0      [点我收藏+]

标签:item   class   int   open   面向   dict   turn   对象   面向对象   

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__()

 

面向对象-内置方法

标签:item   class   int   open   面向   dict   turn   对象   面向对象   

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

踩
(0)
赞
(0)
   
举报
评论 一句话评论(0)
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!