【问题标题】:Python dice simulator, why it is running without stopping?Python骰子模拟器,为什么它不停地运行?
【发布时间】:2020-09-14 15:59:11
【问题描述】:
随机导入 print("这是一个骰子模拟器。") x = "y" 而 x == "y": number = random.randint(1,6) 如果数字 == 1: 打印(” - - - - - - ”) 打印(“| |”) 打印(“| 0 |”) 打印(“| |”) 打印(” - - - - - - ”) 如果数字 == 2: 打印(” - - - - - - ”) 打印(“| 0|”) 打印(“| |”) 打印(“|0 |”) 打印(” - - - - - - ”) 如果数字 == 3: 打印(” - - - - - - ”) 打印(“| 0|”) 打印(“| 0 |”) 打印(“|0 |”) 打印(” - - - - - - ”) 如果数字 == 4: 打印(” - - - - - - ”) 打印(“|0 0|”) 打印(“| |”) 打印(“|0 0|”) 打印(” - - - - - - ”) 如果数字 == 5: 打印(” - - - - - - ”) 打印(“|0 0|”) 打印(“| 0 |”) 打印(“|0 0|”) 打印(” - - - - - - ”) 如果数字 == 6: 打印(” - - - - - - ”) 打印(“|0 0|”) 打印(“|0 0|”) 打印(“|0 0|”) 打印(” - - - - - - ”) x = input("按 y 再次滚动")

我不明白为什么我的代码循环不完。

【问题讨论】:

    标签: python simulation dice


    【解决方案1】:

    好吧,while x == "y" :您的 x 在循环之前的开头设置为 "y",并且在循环期间永远不会更改

    您可能希望在print 语句之后将最后一行更改为inside循环。

    因此修复非常简单:

    改变最后一行:

    x = input("Press y to roll again")
    

        x = input("Press y to roll again")
    

    【讨论】:

      【解决方案2】:

      x = input("Press y to roll again")while 循环之外被询问,因此代码永远不会到达。添加到while:

      import random
      
      print("This is a dice simulator.")
      
      x = "y"
      
      while x == "y":
          number = random.randint(1,6)
      
          if number == 1:
              print("------------")
              print("|          |")
              print("|     0    |")
              print("|          |")
              print("------------")
      
          if number == 2:
              print("------------")
              print("|         0|")
              print("|          |")
              print("|0         |")
              print("------------")
      
          if number == 3:
              print("------------")
              print("|         0|")
              print("|     0    |")
              print("|0         |")
              print("------------")
      
          if number == 4:
              print("------------")
              print("|0        0|")
              print("|          |")
              print("|0        0|")
              print("------------")
      
          if number == 5:
              print("------------")
              print("|0        0|")
              print("|     0    |")
              print("|0        0|")
              print("------------")
      
          if number == 6:
              print("------------")
              print("|0        0|")
              print("|0        0|")
              print("|0        0|")
              print("------------")
      
          x = input("Press y to roll again")
      
      

      Test online!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-09-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-01-03
        • 1970-01-01
        • 2016-04-18
        • 2013-12-18
        相关资源
        最近更新 更多