首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >69 - Python类是否支持多继承,请举例说明

69 - Python类是否支持多继承,请举例说明

原创
作者头像
ruochen
修改2021-06-11 10:05:37
修改2021-06-11 10:05:37
8870
举报

Python是否支持多继承,请举例说明

  • Python支持多继承
代码语言:txt
复制
class Calculator:
    def calculator(self, expression):
        self.value = eval(expression)
        return self.value
    
    def printResult(self):
        print('result: {}'.format(self.value))
        
class MyPrint:
    def print(self, msg):
        print('msg: ', msg)
        
    def printResult(self):
        print('结果: {}'.format(self.value))
        
class MyCalculator1(Calculator, MyPrint):
    pass

class MyCalculator2(MyPrint, Calculator):
    pass

my1 = MyCalculator1()
print(my1.calculator('8 + 2 * 6'))
my1.print('hello')

my2 = MyCalculator2()
print(my2.calculator('1 + 1 * 1'))
my1.print('world')
代码语言:txt
复制
20
代码语言:txt
复制
msg:  hello
代码语言:txt
复制
2
代码语言:txt
复制
msg:  world

如果Python类的多个父类存在相同的成员,按着什么规则处理

  • 如果多个分类存在冲突的成员,会使用最先遇到的成员
代码语言:txt
复制
my1.printResult()

my2.printResult()
代码语言:txt
复制
result: 20
代码语言:txt
复制
结果: 2

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Python是否支持多继承,请举例说明
  • 如果Python类的多个父类存在相同的成员,按着什么规则处理
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档