使用字符串作为变量名称Python
我正在尝试制作一个棒球统计数据库和阵容。有没有办法循环遍历团队列表并使用字符串作为变量名称?使用字符串作为变量名称Python
例如: 提取队名
team_name = 'BOS'
使用BOS作为对象变量名和追加到对象列表
BOS = team_data()
teams.append(BOS)
后来,当我的索引一些统计数据,我可以做以下检索的阵容:
teams.BOS.lineup
我知道在Matlab中,你可以d Ø下面,我想知道是否有在Python等价物:
teams.(team_name).lineup
目前,我有它的数据分配给相同的变量名各环路和追加到列表中。
teams[0].team_name = 'BOS'
teams[1].team_name = 'NYY'
我唯一的想法等是有一个开关情况下TEAM_NAME分配给团队变量名。
使用字典:
teams = {}
teams['BOS'] = team_data()
teams['NYY'] = team_data()
for key in teams:
print(teams[key].team_name) # removed the quotes around "key"
团队名称字符串是否必须预先设定,或者当我得到团队名称的字符串时是否可以完成? – mtourtelot
它们不必预设。您可以动态创建密钥。 –
谢谢,这是诀窍 – mtourtelot
'为TEAM_NAME团队:'? –
你的matlab例子的等价物是'getattr(teams,team_name).lineup'。您还可以'setattr(teams,team_name,team_data())' – Gribouillis