0

我想告诉一个班级每次使用它时要继承什么。

这是一个例子

class widget(var):
    def __init__(self,var):
        #I really have no idea

bob=widget(wx.ComboBox) #I want the class to inheirit from wx.ComboBox
steve=widget(wx.ListBox) #I want the class to inheirit from wx.ComboBox

请不要问诸如“你为什么要这样做?”之类的问题。

4

2 回答 2

4

每次从您想要的任何基类子类化时,您都需要创建一个不同的类。您可以使用动态创建类的函数轻松完成此操作:

def widget(var):
   class Widget(var):
       pass
   return Widget()
于 2012-08-11T12:53:13.567 回答
0

希望对你有帮助:

class A:
    v = 'a'

class B:
    v = 'b'

def C(x):
    class C(x): pass
    return C
x = A
print C(x).v

UPD 注意:如果您还没有,请查看python 装饰器。

于 2012-08-11T13:05:05.347 回答