被多个类继承的Python子类

问题描述 投票:0回答:1

目前我有一个类定义,如下所示:

class cls_A:

    def __init__(self):
        self.__plot__(self)
    # some attributes
    # some methods

    def __plot__(self, parent):
        class plot_fns:
            # plot functions
            def plot1(self):
               # Plot something
        self.plot = plot_fns()

A = cls_A()

我是根据如何从内部类访问外部类?中的答案来执行此操作的。这意味着我可以使用子对象`plot'来方便地绘制对象A的参数。例如:

A.plot.plot1()

现在,我对 cls_B 有了类似的定义,及其实例 B。cls_A 和 cls_B 并不具有所有相同的属性,但与绘图相关的属性是相同的。因此,我希望对象 B 具有相同的子对象绘图功能。目前,我在 cls_B 中重复定义了函数 _plot_。有更好的方法吗?

python inheritance overloading subclass
1个回答
0
投票

您可以使用一个类从一个(或多个)其他类继承

class MyClass(MySuperClass1,MySuperClass2,...):
    def __init__(self):
        ...
    def plot(...):
        ...

当然假设其中一个超类具有方法plot

© www.soinside.com 2019 - 2024. All rights reserved.