为大量数据创建实例名称的最简单方法是什么



我是Python的新手,对面向对象编程有一些了解。下面是我的代码摘录,它确实按预期工作,但我只是想知道是否有更容易的方法通过使用循环将团队名称存储为实例。

如果我想把世界上的每支球队(211支球队(都作为一个单独的例子来添加,那将需要很长时间。Panda正在读取的excel文件包含了工作所需的所有团队名称和统计数据。

import pandas as pd
fixtures = pd.read_excel(r'C:UsersAlexDesktopPythonFootballFixtures.xlsx')
class Team():
def __init__(self, win, draw, loss, gf, ga):
self.win = win
self.draw = draw
self.loss = loss
self.gf = gf
self.ga = ga
self.points = win*3 + draw
self.games = win + draw + loss

wins = list(fixtures['Won'])
draws = list(fixtures['Drawn'])
losses = list(fixtures['Lost'])
scored = list(fixtures['GF'])
conceded = list(fixtures['GA'])
Arsenal = Team(wins[0], draws[0], losses[0], scored[0], conceded[0])
Aston_Villa = Team(wins[1], draws[1], losses[1], scored[1], conceded[1])
Brighton = Team(wins[2], draws[2], losses[2], scored[2], conceded[2])
Burnley = Team(wins[3], draws[3], losses[3], scored[3], conceded[3])
Chelsea = Team(wins[4], draws[4], losses[4], scored[4], conceded[4])
Crystal_Palace = Team(wins[5], draws[5], losses[5], scored[5], conceded[5])
Everton = Team(wins[6], draws[6], losses[6], scored[6], conceded[6])
Fulham = Team(wins[7], draws[7], losses[7], scored[7], conceded[7])

等等。。。。

您没有。你用字典。


teams = {
'Arsenal': Team(wins[0], draws[0], losses[0], scored[0], conceded[0]),
'Aston_Villa': Team(wins[1], draws[1], losses[1], scored[1], conceded[1]),
}

最新更新