首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > perl python >

python object跟type

2013-11-23 
python object和type issubclass(type,object)True其次object是type的实例(xobject,Atype) isinst

python object和type
>>> issubclass(type,object)True

其次object是type的实例(x=object,A=type)

>>> isinstance(object,type)True

?规则1得出object是object的实例(B=object,M=object)

>>> isinstance(object,object)True

?规则2得出type是object的实例

>>> isinstance(type,object)True

?同样可以得到type是type自己实例

?

>>> isinstance(type,type)True

?PS:python中所有类都是自己本身的子类

>>> class A:...     pass... >>> issubclass(A,A)True

?二、object和python中的对象和类

python中的所有对象都是object的实例,所有类都是object的子类(除了旧式类)

>>> class A:...     pass... >>> type(A)<type 'classobj'>>>> isinstance(A,object)True>>> issubclass(A,object)False

?PS:新式类与旧式类的区别

声明上:

>>> class A(object):...     pass... >>> class A:...     pass... 

? 规则:

旧式类是广度优先

class A:        value="a"class B(A):        passclass C(A):        value="c"class D(B,C):        passd=D()print d.value

结果为“a",搜索基类为深度优先

新式类:

class A(object):        value="a"class B(A):        passclass C(A):        value="c"class D(B,C):        passd=D()print d.value

?结果为“c",广度优先

PS:p y3.0中2种声明都为新式类,若要声明旧式类,括号中需制定为旧式类

热点排行