对象相关的BIF

BIF:内置函数

issubclass(class, classinfo) --如果第一个class是第二个classinfo的一个子类,那么这个函数就返回true

注意:

1.非严格的检查,一个类被认为是其自身的子类

2.classinfo可以是类对象组成的元组 ,只要class是其中任何一个候选类的子类,则返回true

3.其他情况抛出Typeerror


isinstance(object,classinfo) --检查object是否classinfo的实例对象,classinfo也可以是元组

1.如果第一个参数不受对象,则永远返回False

2.如果第二个参数不是类或者由类对象组成的元组。会抛出一个TypeError的异常


hasattr(object, name) --对象是否有指定属性 

getattr(object, name[, default]) --获取对象的属性值

setattr(object, name, value)  --为对象属性赋值,如果属性不存在,会新建一个属性

delattr(object, name) --删除对象中指定的属性,不存在的话抛出AttributeError


property(fget=None, fset=None, fdel=None, doc=None) --用属性设置定义好的属性’

作用在于:无论对象内部的fget, fset等函数名称改变后,接口依然不需要改变