【问题标题】:Python dart scoreboard not workingPython飞镖记分牌不起作用
【发布时间】:2017-03-11 15:46:50
【问题描述】:

我已经问过一个关于这个项目的问题,因为我已经解决了这个问题中的错误。但是,我现在遇到了另一个问题。这次我已经做到了,以便 python 程序检查输入的数字是否超过 180(飞镖中允许的最大分数),但是现在当我输入超过 180 的数字时,它似乎仍然把数字拿走了。任何帮助,将不胜感激。 编码: http://pastebin.com/XvWRJjWA

【问题讨论】:

  • 如果您已经提出问题,那么您应该知道代码应该包含在问题中而不是链接。
  • @KlausD。我要为他将代码编辑到问题中;)
  • 愚蠢的编辑队列

标签: python python-2.7 python-2.x


【解决方案1】:

你有:

if (minusnum2 > 180):
   cumulative2 += minusnum2

但我认为你想要:

if (minusnum2 <= 180):
    cumulative2 += minusnum2

另外,我不会使用所有这些重复的方法,而是使用一个类来重构它。然后,您可以为名称(存储为 player0、player1 的元组)和分数(score0、score1 的列表)的实例变量,而不是依赖全局变量。

然后,有一个方法将玩家编号(0 或 1)作为参数并运行该玩家的得分逻辑(self.name[player] 和 self.score[player])。完成此操作后,您可以使用这行代码在循环中在玩家 0 和玩家 1 之间切换,直到找到获胜者:

player = 1 - player

如果player为0,1-0将其设置为1,如果player为1,1-1将其设置为0。

【讨论】:

    猜你喜欢
    • 2017-01-31
    • 2013-07-10
    • 2021-02-26
    • 2022-06-20
    • 1970-01-01
    • 2020-12-28
    • 1970-01-01
    • 2019-06-16
    • 1970-01-01
    相关资源
    最近更新 更多