当前位置:   article > 正文

85. Python中object 根类--dir()查看属性_python内置根类

python内置根类

目录

查看类的继承层次结构

object() 根类


查看类的继承层次结构

通过类的方法 mro() 或者类的属性__mro__可以输出这个类的继承层次结构;

 

 

object() 根类

object 类是所有类的父类, 因此所有的类都有object 类的属性和方法; 我们显然有必要深入研究一下object 类的结构;

dir( ) 查看对象属性

可以方便我们看到指定对象所有的属性

  1. #查看类的继承层次结构
  2. class A:pass
  3. class B(A):pass
  4. class C(B):pass
  5. print(C.mro())
  6. print("*"*30)
  7. class Person:
  8. def __init__(self,name,age):
  9. self.name = name
  10. self.age = age
  11. def say_age(self):
  12. print(self.name,"的年龄是:",self.age)
  13. obj = object()
  14. print(dir(obj))
  15. print("---"*15)
  16. '''
  17. 从上面我们可以发现这样几个要点
  18. 1.Person对象增加了六个属性
  19. __dict__ __module__ __weakref__ age name say_age
  20. 2.object的所有属性,Person类作为object的子类,显然包含了所有的属性
  21. 3.我们打印age,name,say_age,发现say_age虽然是方法,实际上也是属性,
  22. 只不过,这个属性的类型是'method'而已;
  23. age <class 'int'>
  24. name <class 'str'>
  25. say_age <class 'method'>
  26. '''
  27. s2 = Person("李四",18)
  28. print(dir(s2))
  29. 输出:
  30. D:\wwwroot\pyiteam\venv\Scripts\python.exe D:/wwwroot/pyiteam/mypro_obj/mypy02.py
  31. [<class '__main__.C'>, <class '__main__.B'>, <class '__main__.A'>, <class 'object'>]
  32. ******************************
  33. ['__class__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__']
  34. ---------------------------------------------
  35. ['__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'age', 'name', 'say_age']
  36. Process finished with exit code 0

 

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/541000
推荐阅读
相关标签
  

闽ICP备14008679号