如何将具有 3 条数据(在相邻列中)的名称的 CSV 文件转换为以相邻数据作为参数的已创建类的变量?
下面的代码似乎创建了对象,但列表是对象位置,而不是我喜欢的名称。
任何人都可以帮忙吗?
class Teams(object):
def __init__(self, TeamName, FT, FG, Three):
self.TeamName = TeamName
self.FT = FT
self.FG = FG
self.Three = Three
North_Carolina = Teams("North Carolina", .643,.458,.371)
print North_Carolina.TeamName, North_Carolina.FT, North_Carolina.FG,North_Carolina.Three
## works fine but manually typed data
def getData(fname): ##fname is a csv file with 4 columns and 348 rows. One header row.
Data = open(fname, 'r')
TeamList = []
#print Data.read() ## prints a list with comma separated values and line return
for line in Data:
info = line.split(",") ##info is a list of lists of Data with Team,FT,FG,3P
name = info[0]
FT = info[1]
FG = info[2]
Three = info[3]
newTeam = (name, FT, FG, Three)
newTeam2 = Teams(newTeam[0],newTeam[1],newTeam[2],newTeam[3]) ##newTeam2 is an object.
TeamList.append(newTeam2)
print TeamList[1].TeamName ##prints North Carolina list[0] print header
print TeamList #prints list of object locations but not objects themselves
getData("Stats 01-04-2013.csv")
第一print
条语句打印:
North Carolina
第二条print
语句打印:
[<__main__.Teams object at 0x02953230>, <__main__.Teams object at 0x029532B0>, etc etc