所以我有一个.txt的“触发器”列表。我想要做的是访问此触发器列表,确定触发器名称,然后使用该名称指向我所拥有的类的新实例,将其命名为WordTrigger
。我不知道我会怎么做。如果我知道变量,我可以简单地通过var = WordTrigger(parameters)
将类分配给变量。但问题的全部前提是我不知道变量,必须通过扫描列表找出它们的名字。我意识到我可以为我的name
类创建一个WordTrigger
属性,但这仍然留下了我将分配类实例的变量的问题,因为理论上我甚至都没有知道触发器列表有多长,所以我不能只创建静态数量的变量。
有没有办法,给定x个字长列表,创建x个变量并将它们指向一个新的类实例,其名称是从wordlist中提取的?我希望这是有道理的。
答案 0 :(得分: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