因此,在我所拥有的一个班级中,我会逐行地从不同列表中收集的信息创建一个列表,到目前为止已经顺利完成了。我的问题是,使用这个新制作的列表,我需要在同一个类中使用不同的方法,以便以结构化的方式打印列表的信息。我不确定如何将新列表从一个方法转换到另一个方法,以便我可以开始打印过程。在我的主程序中,利用字典(字符串值作为键,类对象作为值)来引用类方法,我有输入
playerDict[nameChoice].calc(basicList)
将我带到给定播放器的方法,然后编译列表。这两种方法如下
def calc(self, sublist):
'''calculate a passer rating for one sub-list year in the info list'''
ratingList = []
count = 0
for line in self.info:
C = ((((int(line[3]) / int(line[4]))*100) - 30)/20)
if C > 2.375:
C = 2.375
Y = (((int(line[5]) / int(line[4])) - 3) * .25)
if Y > 2.375:
Y = 2.375
T = (((int(line[6])) / int(line[4])) * 20)
if T > 2.375:
T = 2.375
I = 2.375 - ((int(line[7])/int(line[4])) * 25)
ratingtop = (C + Y + T + I)
ratingbot = 6
yearRating = float((ratingtop / ratingbot) * 100)
ratingList.append([self.info[count][0], self.info[count][2], yearRating])
print(ratingList)
count += 1
ratingList.sort()
print(ratingList)
print_ratings = self.printInfo
return ratingList
def printInfo(self):
'''print individual year information about this player including each years passer rating. The list should be in year order. Use calc to assist.'''
因此printInfo方法中需要的列表是ratingList。在我的主程序中,我使用playerDict[nameChoice].calc(basicList)
和playerDict[nameChoice].printInfo()
分别调用了两个,但我需要找到一种方法将ratingList放入printInfo方法,以便打印出列表中的信息以指定的方式。我该怎么做呢?我还没有完成printInfo,但是一旦我能够利用方法中的列表,那部分就会很容易。
答案 0 :(得分:1)
def printInfo(self, basicList):
ratingList = self.calc(basicList)
...
请注意,printInfo
也需要列表。