class.__mro__、class.mro()、class.__subclasses__()如何使用

本篇内容介绍了“class.__mro__、class.mro()、class.__subclasses__()如何使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

class.__mro__、class.mro()、class.__subclasses__()如何使用 

实验代码展示:

# class Person():# class Person(object):# class Person:class Person:  # class Person(object):  # class Person:  # class Person(): 这三种写法都是可以的
  '''定义基类Person'''
  def __init__(self, name, age):'''初始化属性name和age'''self.name = name
    self.age = age  def printInfo(self):print(  '---我是一个实例对象, 属于类型:{0:^35}   ---我的名字是: {1:{3}<8}   ---我的年龄是: {2:<5}'.format(str(self.__class__), str(self.name), str(self.age), chr(12288)  ))if __name__ == "__main__":print()per = Person('林麻子',15)per.printInfo()print('-'*50)print(Person.__mro__)print(Person.mro())print(Person.__subclasses__())print('*'*50)

控制台下执行结果:

Windows PowerShell
版权所有 (C) Microsoft Corporation。保留所有权利。

尝试新的跨平台 PowerShell https://aka.ms/pscore6

加载个人及系统配置文件用了 1016 毫秒。(base) PS C:\Users\chenxuqi\Desktop\News4cxq\test4cxq> conda activate ssd(ssd) PS C:\Users\chenxuqi\Desktop\News4cxq\test4cxq>  & 'D:\Anaconda3\envs\ssd\python.exe' 'c:\Users\chenxuqi\.vscode\extensions\ms-python.python-2020.12.424452561\pythonFiles\lib\python\debugpy\launcher' '63627' '--' 'c:\Users\chenxuqi\Desktop\News4cxq\test4cxq\test21.py'---我是一个实例对象, 属于类型:     <class '__main__.Person'>        ---我的名字是: 林麻子        ---我的年龄是: 15   
--------------------------------------------------(<class '__main__.Person'>, <class 'object'>)[<class '__main__.Person'>, <class 'object'>][]**************************************************(ssd) PS C:\Users\chenxuqi\Desktop\News4cxq\test4cxq>

“class.__mro__、class.mro()、class.__subclasses__()如何使用”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!