0

这应该很简单,但我找不到正确的谷歌短语来找到它。只是寻找 def loadClass() 中需要的代码,不知道会是什么。提前致谢!

class ClassA():
    def __init__(self,date):
        pass
class ClassB():
    def __init__(self,date):
        pass
def loadClass(className,date):
    loadedClass = className(date)

loadClass(ClassA,'1/1/2013')
loadClass(ClassB,'1/2/2013'
4

1 回答 1

2

如果您从字面上将字符串作为类名,那么您可以生成“类名”到“类对象”映射的查找,并使用它:

allowed_classes = {
    'A': ClassA,
    'B': ClassB
}

def load_class(class_name, *args, **kwdargs):
    return allowed_classes[class_name](*args, **kwdargs)

new_class_obj = load_class('B', 'Jan 1st')
于 2013-07-17T23:00:29.677 回答