检查一个类是否属于另一个类的子类issubclass
class A:
pass
class B(A):
pass
print(issubclass(B, A))
print(issubclass(B, object)) #object是基础类 所有类都默认继承他
检查一个实例对象是否来源于某个类ininstance
b1 = B()
print(isinstance(b1, B))
检查实例对象是否有某一属性hasatter()
class C:
def __init__(self, x = 0):
self.x = x
c1 = C()
print(hasattr(c1, 'x'))
返回对象的某一属性值 若不存在则返回默认参数getattr()
#返回对象指定的属性值 托不存在则返回默认参数
getattr(c1, 'x')
print(getattr(c1, 'y', '您所访问的参数不存在'))
#若属性不存在则设定这个属性值
setattr(c1, 'y', 'ljl')
print(getattr(c1, 'y', '您所访问的参数不存在'))
删除对象的某属性 若不存在则异常
#删除对应属性 若属性不存在则返回异常
delattr(c1 , 'y')
property方法
property是生成一个可操作方法的对象 propeerty(获取属性,设置属性,删除属性)
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())
print(c1.x)
c1.x = 18
print(c1.x)
print(c1.size)
c1.getSize()