前言:在Python编程中,我们在一些场景需要用到类属性存储或读取,那我们应该如何去灵活使用呢?下面就一起康康吧
一、设置类属性——setattr(object,key,value)
例子:
class E_Test:
def __init__(self,age):
self.age = age
def we(self):
pass
me = E_Test("18")#先实例化类
setattr(me,"name","小阿卷")#设置属性
print(me.__dict__)
响应:
{'age': '18', 'name': '小阿卷'}
二、删除已有类属性——delattr(object,key)
class E_Test:
def __init__(self,age):
self.age = age
def we(self):
pass
me = E_Test("18")
print(me.__dict__)
print(delattr(me,"age"))
print(me.__dict__)
响应:
{'age': '18'}
None
{}
三、获取类属性——getattr(object,key,"属性不存在的时候返回的值,避免报错")
class E_Test:
def __init__(self, age):
self.age = age
def we(self):
pass
me = E_Test("小阿卷")
print(getattr(me, "name", "没获取到")) #获取name属性,没有就提示“没获取到”
#响应:
没获取到
四、获取类属性——hasattr(object,key)
class E_Test:
def __init__(self,age):
self.age = age
def we(self):
pass
me = E_Test("18") #初始化,填写age=18
print("原类属性:",me.__dict__)
if hasattr(me,"name"): #如果类中有"name"这个属性,就打印“有这个属性了”
print("有这个属性了")
else:
setattr(me,"name","添加了name") #如果上面的if条件不满足,那就是设置在类中设置一个属性:key:"name",val:"添加了name"
print("修改后的类属性:",me.__dict__)
响应:
原类属性: {'age': '18'}
修改后的类属性: {'age': '18', 'name': '添加了name'}