输入整数和字符串

时间:2016-08-27 18:54:07

标签: python input

以下是关于网球得分的一些基本事实:
网球比赛由几组组成。一套由游戏组成。

要赢得比赛,玩家必须赢得6场比赛,相差2场比赛。在6-6,通常有一个特殊的打破平局。在某些情况下,玩家继续玩,直到他们中的一个赢得该组,相差两场。

网球比赛可以是3组或5组。赢得大多数组的玩家赢得比赛(即2组3组或5组中的3组) 比赛的得分列出了每组中的比赛,并且首先针对每组报告了总冠军得分。因此,如果得分为6-3,5-7,7-6,则意味着第一名玩家赢得第一组6场比赛至3场,第二场5场比赛输给7场,第三场比赛赢得第7场比赛6场比赛(因此也赢得了整场比赛2局比1)。

您将从键盘(标准输入)中读取包含多个网球比赛结果的输入。每个比赛的得分都记录在一个单独的行上,格式如下:

Winner:Loser:Set-1-score,...,Set-k-score, where 2 <= k <= 5

例如,表单

的输入行
Williams:Muguruza:3-6,6-3,6-3

表示威廉姆斯在3场比赛中以3比6,6比3和6比3战胜穆古鲁扎。

输入以空行终止。

你必须编写一个Python程序来读取所有匹配的信息,并为每个玩家编译以下统计信息:

Number of best-of-5 set matches won
Number of best-of-3 set matches won
Number of sets won
Number of games won
Number of sets lost
Number of games lost

您应该按照排名的降序打印到屏幕(标准输出)摘要,其中排名按照该顺序中的条件1-6(比较项目1,如果相等比较项目2,如果相等比较第3项等,注意到对于第5项和第6项,比较是相反的。)

例如,给出以下数据

Djokovic:Murray:2-6,6-7,7-6,6-3,6-1
Murray:Djokovic:6-3,4-6,6-4,6-3
Djokovic:Murray:6-0,7-6,6-7,6-3
Murray:Djokovic:6-4,6-4
Djokovic:Murray:2-6,6-2,6-0
Murray:Djokovic:6-3,4-6,6-3,6-4
Djokovic:Murray:7-6,4-6,7-6,2-6,6-2
Murray:Djokovic:7-5,7-5
Williams:Muguruza:3-6,6-3,6-3

您的程序应打印出以下内容

Djokovic 3 1 13 142 16 143
Murray 2 2 16 143 13 142
Williams 0 1 2 15 1 12
Muguruza 0 0 1 12 2 15

您可以假设标点符号:-,周围没有空格。每个玩家的名字将拼写一致,没有两个玩家具有相同的名称。

选择此作业的语言。

,
1
    print (Djokovic:Murray:2-6,6-7,7-6,6-3,6-1
2
Murray:Djokovic:6-3,4-6,6-4,6-3
3
Djokovic:Murray:6-0,7-6,6-7,6-3
4
Murray:Djokovic:6-4,6-4
5
Djokovic:Murray:2-6,6-2,6-0
6
Murray:Djokovic:6-3,4-6,6-3,6-4
7
Djokovic:Murray:7-6,4-6,7-6,2-6,6-2
8
Murray:Djokovic:7-5,7-5
9
Williams:Muguruza:3-6,6-3,6-3),

所以我无法理解如何获取包含字符串和数字的输入进行分析?

1 个答案:

答案 0 :(得分:1)

以下内容不是您作业的答案,但我希望它能展示您可能想要探索的一些想法。

具体回答您关于如何将字符串中的数字字符转换为整数的问题,请查看int(score_pair_split[0])我在哪里更改各个分数的string值并将其存储在{{1}中使用dict作为integers

int()
相关问题