1.issubclass(class,classinfo)
若第一个参数是第二个参数的子类,则返回Ture。
注:
①一个类被认为是自身的子类
②classinfo可以是类对象组成的元组,只要class与其中任意一个符合关系,就返回Ture
>>> issubclass(A,object)
True
>>>
object是所有类的基类
2.isinstance(object,classinfo)
检查一个实例对象是否属于一个类
①若第一个参数不是实例对象的话,永远返回False
②如果第二个参数不是类或者类对象组成的元组,会抛出TypeError
3.hasattr(object,name)
测试某一对象是否有指定的属性。属性名name为字符串类型
4.getattr(object,name[,default])
返回对象指定的属性值,若属性不存在,则返回default(在传入可选参数default的情况下,否则抛出异常)
5.setattr(object,name,value)
设置对象中指定属性的值,如果指定的属性不存在,则会创建一个新属性,所以name要加引号(字符串)
6.delattr(object,name)
删除对象中指定的属性,若属性不存在,则报错。
7.property(fget=None,fset=None,fde=None,doc=None)
通过属性来设置属性
>>> c1.getsize()
10
>>> c1.x
10
>>> c1.x = 18
>>> c1.x
18
>>> del c1.x
>>> c1.x
Traceback (most recent call last):
File "<pyshell#17>", line 1, in <module>
c1.x
File "<pyshell#10>", line 5, in getsize
return self.size
AttributeError: 'C' object has no attribute 'size'
若第一个参数是第二个参数的子类,则返回Ture。
注:
①一个类被认为是自身的子类
②classinfo可以是类对象组成的元组,只要class与其中任意一个符合关系,就返回Ture
>>> issubclass(A,object)
True
>>>
object是所有类的基类
2.isinstance(object,classinfo)
检查一个实例对象是否属于一个类
①若第一个参数不是实例对象的话,永远返回False
②如果第二个参数不是类或者类对象组成的元组,会抛出TypeError
3.hasattr(object,name)
测试某一对象是否有指定的属性。属性名name为字符串类型
4.getattr(object,name[,default])
返回对象指定的属性值,若属性不存在,则返回default(在传入可选参数default的情况下,否则抛出异常)
5.setattr(object,name,value)
设置对象中指定属性的值,如果指定的属性不存在,则会创建一个新属性,所以name要加引号(字符串)
6.delattr(object,name)
删除对象中指定的属性,若属性不存在,则报错。
7.property(fget=None,fset=None,fde=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()
>>> c1.getsize()
10
>>> c1.x
10
>>> c1.x = 18
>>> c1.x
18
>>> del c1.x
>>> c1.x
Traceback (most recent call last):
File "<pyshell#17>", line 1, in <module>
c1.x
File "<pyshell#10>", line 5, in getsize
return self.size
AttributeError: 'C' object has no attribute 'size'