該方案的原則是根據足球運動員的表現(進球數)得到最終排名。因此,我必須根據目標的數量來確定積分。陣列中的屬性點
只有3名足球運動員,根據進球數目排名從最小到最大。 有兩輪更多的最終排名。我必須要學會處理數組和函數(不使用的功能ZIP,排序,等...)
這裏是我的陣列
名=「亨利」,「歐文」,「德羅巴」] =>的足球運動員
目標1 =的名稱[18,12,6] =>它的第一輪爲每個玩家
目標2 =期間是關於目標的數目的[6,8,5] =>它是第二輪每個球員的進球數大約爲
gain = [2,4,6] =>根據目標數量得分進行歸屬如果您標出了最多的進球數,您將獲得6分。所以最大。
我不知道是否清楚?對不起我的英語不好。
我的問題,我有另一個數組點= [0,0,0]我怎麼能得到這個數組總點數最終排名?對於每一輪,我都希望用當前的點數加起來。
之後我希望用新功能預覽最終排名。 非常感謝。
def printOne(name, goal, title, current_pts):
print("\t\t\t\t{}\n".format(title))
for i in range(len(name)):
print("\t\t\t\t {} \t {} points {} goals".format(name[i], gain[i] ,goal[i]))
print("=======================================================")
return current_pts
def sort(name, goal1, goal2, pts):
swap = True
while swap:
swap = False
for i in range(len(name) - 1):
if goal1[i + 1] < goal1[i]:
name[i], name[i + 1] = name[i + 1], name[i]
goal1[i], goal1[i + 1] = goal1[i + 1], goal1[i]
goal2[i], goal2[i + 1] = goal2[i + 1], goal2[i]
pts[i], pts[i + 1] = pts[i + 1], pts[i]
swap = True
return name, goal1, goal2, pts
def test(name, goal, pts):
for i in range(len(name)):
goalTotal.append(goal1[i] + goal2[i])
print(name[i] + " \t ???? points \t " + str(goalTotal[i]) + " goals : ")
return name, goal, pts
name = ["Henry", "Owen", "Drogba"]
point = [0,0,0]
goal1 = [18, 12, 6]
goal2 = [6, 8, 5]
gain = [2,4,6]
goalTotal = []
name, goal1, goal2, point = sort(name, goal1, goal2, point)
point = printOne(name, goal1, "First round", point)
name, goal2, goal1, point = sort(name, goal2, goal1, point)
point = printOne(name, goal2, "Second round", point)
test(name, goalTotal, "Ranking total ")
下面是結果
First round
Drogba 2 points 6 buts
Owen 4 points 8 buts
Henry 6 points 10 buts
=======================================================
Second round
Henry 2 points 4 buts
Drogba 4 points 5 buts
Owen 6 points 6 buts
=======================================================
Final Ranking
Drogba 6 points
Henry 8 points
Owen 10 points
你如何做到這一點http://hpics.li/f84c107?你的結果幾乎是正確的 – augustin1340
你是什麼意思的「你怎麼做到這一點」?我從字面上給你的代碼。我是否需要更多地解釋代碼? –
謝謝你的幫助。我已經編輯了我的第一篇文章,作出最終結果。你如何在第一輪加入積分?爲了最後的排名? – augustin1340