将列表从一个类方法转移到另一个类方法

时间:2016-04-30 19:54:43

标签: python class methods return

因此,在我所拥有的一个班级中,我会逐行地从不同列表中收集的信息创建一个列表,到目前为止已经顺利完成了。我的问题是,使用这个新制作的列表,我需要在同一个类中使用不同的方法,以便以结构化的方式打印列表的信息。我不确定如何将新列表从一个方法转换到另一个方法,以便我可以开始打印过程。在我的主程序中,利用字典(字符串值作为键,类对象作为值)来引用类方法,我有输入

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,但是一旦我能够利用方法中的列表,那部分就会很容易。

1 个答案:

答案 0 :(得分:1)

def printInfo(self, basicList):
    ratingList = self.calc(basicList)
    ...

请注意,printInfo也需要列表。