Python中type与Object的区别

Python中type与Object的区别

在查看了Python的API后,总算明白了。现在总结如下:

    先来看object的说明:

    Python中关于object的说明很少,甚至只有一句话:

  1. class object   
  2.     The most base type   

    从介绍上看这也是Python对类型统一做出的努力。所以这里的object与Java的Object类有着异曲同工之妙,而且可以推测这个object很可能就是一个定义了一个类型的"空类"

    再来看type的说明:

  1. class type(object)   
  2.     type(object) -> the object's type  
  3. type(name, bases, dict) -> a new type  
  4.     
  5.   Methods defined here:  
  6.   
  7. __call__(...)  
  8. x.__call__(...) <==> x(...)  
  9. __cmp__(...)  
  10. x.__cmp__(y) <==> cmp(x,y)  
  11. __delattr__(...)  
  12. x.__delattr__('name') <==> del x.name  
  13. __getattribute__(...)  
  14. x.__getattribute__('name') <==> x.name  
  15. __hash__(...)  
  16. x.__hash__() <==> hash(x)  
  17. __repr__(...)  
  18. x.__repr__() <==> repr(x)  
  19. __setattr__(...)  
  20. x.__setattr__('name', value) <==> x.name = value  
  21. __subclasses__(...)  
  22. __subclasses__() -> list of immediate subclasses  
  23. mro(...)  
  24. mro() -> list  
  25. return a type's method resolution order  
  26.    

      自从大家应该明白了type和object的区别吧。如果大家平时在定义类的时候,想尽可能的偷懒,可以直接从type继承,否则还是建议继承object吧

     另外贴上实际运行的区别吧:

    
  




 

 

原文地址:https://www.cnblogs.com/timssd/p/4688012.html