Python如何使用字符串值作为代码的类/部分?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (65)

是否可以将字符串的值直接作为类使用?我不知道如何准确地描述我想用单词做什么,所以伪代码版本可能是理解问题所在的最好方法。下面是一个例子:

for node in itemdict.iterkeys():
    nodeinfo = itemdict.get(node)

    if nodeinfo[4] == "node": #create new Links based on original nodeclass
        #Example if nodeinfo[1] == "Dot"
        #link = nuke.nodes.Dot(hide_input=nodeinfo[3], label='to: ' + nodeinfo[2])
        link = nuke.nodes.XXX_value of nodeinfo[1] here_XX(hide_input=nodeinfo[3], label='to: ' + nodeinfo[2])
提问于
用户回答回答于

如果要按名称获取类,则可以使用内置函数:

例如:

class A(object):
    def __init__(self):
        self.number = 1

class B(object):
    def __init__(self):
        self.number = 2

for name in 'A', 'B':
    print(globals()[name]().number)

这一产出:

1
2

扫码关注云+社区

领取腾讯云代金券