所以,我在使用这段代码时遇到了一点麻烦。
if s.get("home") < s.get("away"):
scoringplays = scoringplays + s.get("away") + "-" + s.get("home") + " " + game.get("away_team_name")
elif s.get("home") > s.get("away"):
scoringplays = scoringplays + s.get("home") + "-" + s.get("away") + " " + game.get("home_team_name")
else:
scoringplays = scoringplays + s.get("home") + "-" + s.get("away") + " Tied"它从MLB拉取一场棒球比赛的比分,并将其发布到reddit,如下所示:
4-3获胜团队名称
但是,我注意到如果其中一个分数是两位数,代码似乎只读取第一个数字,所以分数10-2将显示为:
2-10输掉球队名称
我搜索了一下,也许我用错了搜索词,但我似乎在这里找不到答案。任何帮助都将不胜感激。
发布于 2013-06-30 23:12:52
看起来你在比较字符串:
>>> "10" < "2"
True比较它们的整数版本:
if int(s.get("home")) < int(s.get("away"))如果字典中缺少键,则默认情况下,dict.get返回None。您也可以传递自己的默认值。
home_score = int(s.get("home", 0)) # or choose some other default value
away_score = int(s.get("away", 0))
if home_score < away_score:
#do something演示:
>>> int("10") < int("2")
Falsehttps://stackoverflow.com/questions/17391727
复制相似问题