首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >宣布胜利者代码

宣布胜利者代码
EN

Stack Overflow用户
提问于 2015-11-02 04:40:08
回答 3查看 100关注 0票数 0

我想知道是否有人能帮我这个忙。这是一个简单的橄榄球冠军播音员。代码有时运行得很好,而其他时候却不太好。

代码语言:javascript
复制
team1 = input ("Team 1: ")
score1 = input("Score: ")
team2 = input("Team 2: ")
score2 = input("Score: ")

if score1 >= score2:
  print (team1 + " beat " + team2 + " " + score1 + "-" + score2)
else:
  print(team2 + " beat " + team1 + " " + score2 + "-" + score1)

这是一个正在工作的例子:

代码语言:javascript
复制
Team 1: england
Score: 35
Team 2: fiji
Score: 11
england beat fiji 35-11

但是,当我输入它时,它不起作用:

代码语言:javascript
复制
Team 1: Wales
Score: 54
Team 2: Urguary
Score: 9
Urguary beat Wales 9-54

有人能看出是怎么回事吗?任何帮助都很感激。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-11-02 04:44:53

您的比较没有按预期的方式工作,因为它是比较字符串,而不是数字。字符串按字典顺序进行比较,因此954高,就像Z按字母顺序排列在AA之后一样。

要使代码工作,请将用户获得的分数转换为使用int的整数。

代码语言:javascript
复制
team1 = input ("Team 1: ")
score1 = int(input("Score: "))
team2 = input("Team 2: ")
score2 = int(input("Score: "))
票数 1
EN

Stack Overflow用户

发布于 2015-11-02 04:47:38

代码语言:javascript
复制
team1 = input ("Team 1: ")
score1 = input("Score: ")
team2 = input("Team 2: ")
score2 = input("Score: ")

if int(score1) >= int(score2):
  print (team1 + " beat " + team2 + " " + score1 + "-" + score2)
else:
  print(team2 + " beat " + team1 + " " + score2 + "-" + score1)
票数 0
EN

Stack Overflow用户

发布于 2015-11-04 13:13:20

我建议比较值,输入值时使用整数或浮点数,或者在比较之前使其为整数或浮点数。

要么立即做

score1 = int(input("Score: ")

或紧接其后

score1 = input("Score: ") score1 = int(score1)

或者就像比较

if int(score1) >= int(score2):

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33470871

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档