Python 3.x 通过列表引用访问动态创建的实例

Python 3.x 通过列表引用访问动态创建的实例,python-3.x,object,Python 3.x,Object,我创建了一组团队对象,在创建过程中,我将每个团队对象的名称添加到列表中。如何使用此列表访问每个实例 InstanceNames=['team1'、'team2'、'team3'等] 我想知道如何做到这一点: InstanceNames[0]。playGameInstanceNames[1] 这应该像说“团队1”。玩游戏“团队2” 我真正想问的是,如何获取从左侧InstanceNames[0]返回的字符串,以便在代码中动态使用每个实例名我想做的是: InstanceNames[0]。playGam

我创建了一组团队对象,在创建过程中,我将每个团队对象的名称添加到列表中。如何使用此列表访问每个实例

InstanceNames=['team1'、'team2'、'team3'等]

我想知道如何做到这一点:

InstanceNames[0]。playGameInstanceNames[1]

这应该像说“团队1”。玩游戏“团队2”

我真正想问的是,如何获取从左侧InstanceNames[0]返回的字符串,以便在代码中动态使用每个实例名我想做的是: InstanceNames[0]。playGameInstanceNames[1] 更具体地说 x=0 y=1实例名称[x]。游戏实例名称[y]

本例中的playGame是Team类中的一个函数,它接受要玩的团队的参数

我会使用它最终将游戏的分数返回给每个团队,但一旦我学会了如何动态地将团队对象名称放置在等式的左侧,我就可以明白这一点


你知道怎么做吗?我使用的是Python 3.5.1,如果你真的想要列表,你可以把实例本身——而不是它们的名字——添加到列表中

如果你那样做的话,你上面的例子将是现成的

或者,如果您将实际使用名称,请使用字典而不是列表-您将能够使用名称作为键,使用实例作为值:

teams = {}
teams["team1"] = Team(name="team1", ...)
...

teams["team1"].play_game(teams["team2"])

感谢jsbueno的快速回复。这样回答了我的问题,但没有达到我需要的水平。我真正想问的是如何获取从左侧InstanceNames[0]返回的字符串,以便我可以在代码中动态使用每个实例名称这里是我要做的InstanceNames[0]。playGameInstanceNames[1]更具体地说,x=0 y=1 InstanceNames[x]。playGameInstanceNames[y]这将允许我的程序对适当的对象进行适当的调用抱歉-这个答案确切地告诉您这个代码片段将如何工作:如果您想访问playGame方法,请在对话框的左侧。您需要对象的实例,而不是字符串。如果你想知道这些名称,并让它们进入对象,只需使用答案的两个部分:即:保留一个按名称键入的实例字典,以及一个包含名称的列表:teams[InstanceNames[0]]。playGame…你说得对,我只是误解了你第一次看到它时说的话。我感谢你的帮助,希望你周末过得愉快!