类和对象:一些相关的BIF

一些相关的BIF

issubclass(class, classinfo)
class 是classinfo 的子类,则返回true
1.一个类被以为是其自身的子类
2.classinfo可以是类对象组成的元组,只要classinfo与其中任何一个候选类的子类,则返回True
isinstance(object, classinfo)
检查一个实例对象是否属于一个类
hasattr(object, name)
attr=attribute:属性
测试一个对象里面是否有指定的属性,name是属性名,需要用''
getattr(object, name[, default])
返回对象指定的属性值,如果属性值不存在,则返回default值

例如

getattr对应,(c1,’t’,’9’)
‘9’

setattr(object, name, value)
与etattr对应,设定对象中指定属性的值,如果属性不存在,会新建name属性,并赋值value

setattr(c1,’t’,’7’)
getattr(c1,’t’,’9’)
‘7’

delattr(object, name)

删除对象中指定的属性,如果属性不存在,则抛出AttributeError:’name’

property(fget=None, fset=None, fdel=None, doc=None)

通过属性来设置属性

class C:
def init(self,size= 10):
self.size = size
def getSize(self):
return self.size
def setSize(self,value):
self.size = value
def delSize(self):
del self.size
x = property(getSize,setSize,delSize)

c1 =C ()
print(c1.getSize())
10
print(c1.x)
10

致清 wechat
微信扫描二维码,和我一起探讨学习!