1

所以我有一个“触发器”的 .txt 列表。我想要做的是访问这个触发器列表,确定触发器名称,然后使用该名称指向我拥有的类的新实例,调用它WordTrigger。我不知道我会怎么做。如果我知道变量,我可以简单地将类分配给一个变量var = WordTrigger(parameters)。但问题的整个前提是我不知道变量,必须通过扫描列表找出它们的名称。我意识到我可以name为我的类创建一个属性WordTrigger,但这仍然留下了我将为类实例分配哪些变量的问题,因为理论上,我什至不知道触发器列表有多长,所以我不能只创建静态数量的变量。

有没有什么办法,给定一个 x 长的单词表,创建 x 个变量并将它们指向一个类的新实例,该类的名称是从单词表中提取的?我希望这是有道理的。

4

1 回答 1

4

使用字典:

dic={word:WordTrigger(parameters) for word in wordlist}

例子:

>>> wordlist=['a','b','c','d','e']
>>> class A:
    def __init__(self,i):
        self.ind=i


>>> dic={word:A(i) for i,word in enumerate(wordlist)}
>>> dic['a'].ind
0
>>> dic['c'].ind
2
于 2012-09-25T21:19:58.573 回答