如何使用动态命名的base创建元类?

时间:2017-05-15 11:27:29

标签: python-3.x oop

这是我的代码:

class Tb(object):
    def __init__(self, name):
        self.name=name
    def foo(self):
        return 0

class Tb1(Tb):
    def foo(self):
        return 1

met=type('Tb1', (Tb1,), {})
a=met('aaa')

print(a.foo())

有没有办法在这里使用动态命名的基础:met=type('Tb1', (Tb1,), {}),如met=type('Tb1', (STRING_CLASS_NAME OR? ,), {})

1 个答案:

答案 0 :(得分:-1)

我找到了答案:

met=type('Tb1', (eval('Tb1'),), {})