对象属性操作函数
1.setattr()函数——设置对象的属性值
功能:用于设置一个对象必须存在的属性值
语法:setattr(object是要设置的对象,name对象已存在的属性,value要设置的属性值)
2.property()函数——在新式类中来定义获取 设置 删除以及描述操作的属性实现函数
功能:用于新式类中实现对属性的访问器设定
语法:property([fget[,fset[,fdel[,doc]]]])
示例:自定义类并创建受保护属性,通过property()函数定义name访问器,最后经过获取设置和删除操作来实现属性操作
class myClass(object):
def _init_(self):
self._name = "默认值"
def getx(self, value):
self._name = value
def delx(self):
del self._name
Name = property(getx, setx, delx, "i'm the "x" property.")
myclass=myClass()
print("第一次获取:",myclass.name)
myclass.Name="设置Name属性值"
print("设置值后,再一次获取:",myclass.Name)
del myclass.Name
print("属性值已删除,不能再进行获取")
3.vars()函数——以字典方式返回对象的属性和属性值
语法:.vars(【object】)
示例:自定义类并定义多个属性,通过.vars()函数实现这些属性以字典形式返回
class myClass(object):
id=1
name="哈哈"
age=20
sex="男"
getAttrDict=vars(myClass)
print("获取的属性:",getAttrDict)
输出:获取的属性: {'__module__': '__main__', 'id': 1, 'name': '哈哈', 'age': 20, 'sex': '男', '__dict__': <attribute '__dict__' of 'myClass' objects>, '__weakref__': <attribute '__weakref__' of 'myClass' objects>, '__doc__': None}
4.getattr()函数——返回对象属性值
语法:.getattr(object,name[,default])
示例:
输出:
5.hasattr()函数——判断对象是否包括指定的属性
语法:hasattr(object,name)
6.delattr()函数——删除对象属性