2016-04-30 5 views
0

私が持っているクラスでは、別のリストに集められた情報から、行ごとにリストを作成しています。私の問題は、この新しく作成されたリストでは、リストの情報を構造化された方法で印刷するために、同じクラスの別のメソッドを利用する必要があるということです。私は印刷プロセスを開始できるように、ある方法から別の方法に新しいリストを得る方法を正確にはわかりません。クラスメソッドを参照するための辞書(値としてキー、クラスオブジェクトとして文字列値)を利用し、私のメインプログラムでは、私は特定の方法に私を取るあるクラスのメソッドから別のクラスのメソッドへのリストの転送

playerDict[nameChoice].calc(basicList)

の入力を持っていますプレーヤーを選択し、リストをコンパイルします。 2つの方法は次のとおりです

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()を使って別々に2つを呼び出しましたが、指定した方法でリストの情報をプリントアウトするには、ratingListをprintInfoメソッドに取得する方法を見つける必要があります。これをどうやってやりますか?私はprintInfoをまだ完成させていませんが、そのメソッドのリストを利用することができれば、その部分は簡単に手に入ります。

答えて

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

printInfoにもリストが必要です。