2017-10-24 4 views
2

goalsForgoalsAgainstの中で最も高いチームはどれですか?チームだけを印刷してください。 float()を使用して、浮動小数点除算を実行していることを確認してください。Pythonを使用してテーブルから比率を探しますか?

私はこの質問に固執しています。このデータを持つ表は「チーム」と表示されます(https://docs.google.com/spreadsheets/d/16o_wPHCJVWjlnSc2V-GCHCg4iUqh05dhhzuKTauUAeo/edit?usp=sharing

これまで私がこれまで考え出してきたことは以下の通りですが、これは単なる1つではなくすべてのチームの配給リストを作成します最高のチームの答え。

ratio = [] 
for y in teams: 
    ratio.append(float(y['goalsFor']) - float(y['goalsAgainst'])) 
    maximumRatio = max(ratio) 
    print maximumRatio 
+0

「チーム」が正確に何を提供する必要があると思います。 – Nae

答えて

0

maximumRatioを次のようにループから外してください。 teamsを想定し

ratio = [] 
for y in teams: 
    ratio.append(float(y['goalsFor'])/float(y['goalsAgainst'])) 
maximumRatio = max(ratio) 
print maximumRatio 
+0

正しい回答はドイツ語でなければならないが、これは北朝鮮を提供する。理由は分かっていないがなぜか –

+0

計算をチェックする。 – arsho

+0

比率?それは 'float(y ['goalsFor'])/ float(y ['goalsAgainst']'、右か? – arsho

0

は、以下のチーム名なしの辞書のリストである実施例です。

注意すべき点は、ゼロ除算のエラーです。これは、goalsAgaint0の場合に発生する可能性があります。

teams = [ 
    {'goalsFor':2, 'goalsAgainst':4}, # 0.5 
    {'goalsFor':5, 'goalsAgainst':9}, # 0.55555 
    {'goalsFor':3, 'goalsAgainst':8} # 0.375 
] 

# keep track of the best ratio as well as the best team. 
best_ratio = 0 
best_team = None 

for y in teams: 
    ratio = float(y['goalsFor'])/float(y['goalsAgainst']) 
    if ratio > best_ratio: 
     best_ratio = ratio 
     best_team = y 

print("Best team is {}, with ratio {}".format(best_team, best_ratio)) 
# Best team is {'goalsFor': 5, 'goalsAgainst': 9}, with ratio 0.555555555556 
関連する問題