【发布时间】:2013-02-23 22:33:34
【问题描述】:
这是一个丑陋的、高维护的工厂。我真的只需要一种方法来使用字符串来实例化一个名称与字符串匹配的对象。我认为元类是答案,但我不知道如何应用它:
from commands.shVersionCmd import shVersionCmd
from commands.shVRFCmd import shVRFCmd
def CommandFactory(commandnode):
if commandnode.attrib['name'] == 'shVersionCmd': return shVersionCmd(commandnode)
if commandnode.attrib['name'] == 'shVRFCmd': return shVRFCmd(commandnode)
【问题讨论】:
-
也许您想将标题更改为“按名称调用函数”?也许你可以尝试谷歌这个呢? ;)
-
我的研究可能失败了,但我可以自信地说这不是因为缺乏尝试。不过感谢关键字提示:)
标签: python