【1.2】type、object和class之间的关系

 1 #!/user/bin/env python
 2 # -*- coding:utf-8 -*-
 3 
 4 a = 1
 5 b = 'abc'
 6 print(type(1))
 7 print(type(int))
 8 print(type(b))
 9 print(type(str))
10 
11 
12 class Student:
13     pass
14 
15 
16 class MyStudent(Student):
17     pass
18 
19 
20 stu = Student()
21 print(type(stu))
22 print(type(Student))
23 print(int.__bases__)
24 print(str.__bases__)
25 print(Student.__bases__)
26 print(MyStudent.__bases__)
27 print(type.__bases__)
28 print(object.__bases__)
29 print(type(object))
<class 'int'>
<class 'type'>
<class 'str'>
<class 'type'>
<class '__main__.Student'>
<class 'type'>
(<class 'object'>,)
(<class 'object'>,)
(<class 'object'>,)
(<class '__main__.Student'>,)
(<class 'object'>,)
()
<class 'type'>

  关系如下图所示:

【1.2】type、object和class之间的关系

  type是一个类,生成的类是一个对象,生成的实例也是一个对象

  type是一个类,同时也是个对象

  

  object是type的实例

  type继承object

 

  总结:

    可以把上图展示的内容分为3类

      • type自成一类,type是自己的对象(可以实例化自己),type创建所有对象

      • list、str、dict、tuple...都继承object,它们都是type的对象,object是所有类的基类

      • “abc”...代表了所有生成的对象

  

上一篇:Python 多重继承


下一篇:Python--类