该方案的原则是根据足球运动员的表现(进球数)得到最终排名。因此,我必须根据目标的数量来确定积分。阵列中的属性点
只有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