2017-10-28 13 views
-5

私は3つのリストTeams = [T1、T2、T3、T4]を獲得しており、Nwins [10,12,10,5]の得点とゴールは GScored [33,34,22、 28]。しかし、2つのチームがシーズンで同じ勝利を出してから得点を決めれば、勝利の数に基づいてシーズンの勝者を探したい。同様に、勝利の最も少ないものは降格され、2つがある場合は、得点が最も少ないものが削除されます。あなたの助けは(私はあなたの例を修正)"T1"としてwinnerを与え、"T2"などrelegatedPythonソリューションが必要

+0

提供するサンプルコードはありますか?ありがとうございます。 SOはコード作成サービスではありませんので、あなたに明白な努力を払わずにSOに依頼する前に何か試みてください。 –

+0

Nwins [10,12,10,5]は意味する。 'Nwins'は' Nwins = [10,12,10,5] 'のようなリストなのですか? –

+0

質問を編集する必要があります。そうしないと、フラグが立てられ、削除されます。コードスニペットと例を含めてください。 –

答えて

0
Teams = ["T1","T2","T3","T4"] 
NoWins = [10,0,10,5] 
GScored = [33,34,22,28] 

highestWins = max(NoWins) 
if NoWins.count(highestWins) == 1: 
    winner = Teams[NoWins.index(highestWins)] 
else: 
    options = [g for i, g in enumerate(GScored) if NoWins[i] == highestWins] 
    winner = [t for i, t in enumerate(Teams) if NoWins[i] == highestWins][options.index(max(options))] 

lowestWins = min(NoWins) 
if NoWins.count(lowestWins) == 1: 
    relegated = Teams[NoWins.index(lowestWins)] 
else: 
    options = [g for i, g in enumerate(GScored) if NoWins[i] == lowestWins] 
    relegated = [t for i, t in enumerate(Teams) if NoWins[i] == lowestWins][options.index(min(options))] 

を理解されるであろう。

そしてNoWins = [0, 2, 2, 2]GScored = [4, 4, 3, 3]場合、winner"T2"あるとrelegated"T1"です。

+0

@StefanPochmann良い点、私は上位チームに得点の比較を制限しませんでした。今すぐ回答に追加! –

+0

@StefanPochmann私はついにそれを働かせました**非常に**騒々しい、しかしそれは動作します。すべてのテストに合格しました(レギュレーション・ドローイング・スコアと勝者ドローイング・スコア)ので、少なくとも動作します!それにもかかわらず、あなたの答えは*多く、多く、多く*もっときれいなので、私から+1 ** ** –

+0

@StefanPochman秒、https://en.oxforddictionaries.com/definition/e.gに見えます。 –

2
winner = max(zip(Nwins, GScored, Teams))[2] 
関連する問題