Yugoo 发表于 2022-10-28 22:34:42

求问各位是哪里出错了

本人写了一下python教程里的小游戏,但玩的时候发现永远猜不对,它只会返回“大了”或“小了”,卑微求教哪里出了错,非常感谢{:5_100:} """这是一个快乐小游戏"""
import random
chance=9

while chance>0:
    guess=int(input("你觉得我多大了?答案在一百以内哦:"))
    answer=random.randint(1,100)
    if guess==answer:
      print("你真厉害!猜对啦~")
      break
    else:
      if guess<answer:
            print("很可惜,猜小了捏~")
            print(f"还有{chance-1}次机会哦~")
      else:
            print("很可惜,猜大了捏~")
            print(f"还有{chance-1}次机会哦~")
chance=chance-1
   
   
print("游戏结束,不玩啦~")

Yugoo 发表于 2022-10-28 22:36:29

可以运行,但就是猜不对{:5_100:}

jackz007 发表于 2022-10-28 22:43:53

本帖最后由 jackz007 于 2022-10-29 09:07 编辑

while chance>0:
. . . . . .
    answer=random.randint(1,100)
      每次循环 answer 都在变,要是能猜对,那才见了鬼呢,要把这一句移出循环,放到程序开头,while 语句的前面。
import random

""这是一个快乐小游戏"""

answer=random.randint(1,100)                           # 这一句必须在循环前面
chance=9
while chance>0:
    guess=int(input("你觉得我多大了?答案在一百以内哦:"))
    if guess==answer:
      print("你真厉害!猜对啦~")
      break
    else:
      if guess<answer:
            print("很可惜,猜小了捏~")
            print(f"还有{chance-1}次机会哦~")
      else:
            print("很可惜,猜大了捏~")
            print(f"还有{chance-1}次机会哦~")
    chance=chance-1                                    # 这一句缩进位置有误,已经改正,如果不改,chance 就无用

print("游戏结束,不玩啦~")

byhaoge 发表于 2022-10-29 02:39:40

学习学习{:5_109:}

Yugoo 发表于 2022-11-1 10:43:48

jackz007 发表于 2022-10-28 22:43
每次循环 answer 都在变,要是能猜对,那才见了鬼呢,要把这一句移出循环,放到程序开头,while...

!!!妈呀!!对哦!!!非常感谢!!!我下次会更谨慎!!!
页: [1]
查看完整版本: 求问各位是哪里出错了