【发布时间】:2019-08-12 10:58:29
【问题描述】:
我有一个用例,我想根据对象类型获取另一个类。
对于一个解决方案,我创建了一个 dict,我在其中维护这种关系并使用类型在类之间进行匹配。
例如,考虑下面的代码
class classA(object):
def __init__(self):
print "A called"
class classB(object):
def __init__(self):
print "B called"
MAP = {
A: classA,
B: classB
}
class C(object):
pass
class A(C):
pass
class B(C):
pass
obj can be object of A or B.
new_cls = MAP.get(type(obj), 'None')
new_obj = new_cls()
有没有更好的方法来实现这一点?
【问题讨论】:
标签: python