asd13579 发表于 2025-1-3 20:25:39

while <ounts >0:

"""用Python设计的第一个游戏"""
import random

comnt=3
answer=random.randint(1,10)

while <ounts >0:(while <ounts >0:中哪里错了???求解!!!)
    temp=input("不妨猜一下小甲鱼现在心里的是那个数")
    guess=int(temp)

    if guess==answer:
      print("你是小甲鱼心里的蛔虫嘛?!")
      print("哼,猜中了也没有奖励")
      break
    else:
       if guess<answer:
         print("小了")
       else:
         print("大了")
    print("猜错了,小甲鱼现在心里想的是8!")

print("游戏结束,不玩了^-^")
      

FishC 发表于 2025-1-3 20:32:48

鱼油,您在`while`循环条件的语法有些错误。`while`循环的条件应该是一个布尔表达式,但您当前使用的是`while 0:`,这是不正确的。

如果您想检查变量`counts`是否大于0,那么应该这样写:

while counts > 0:

根据您的代码逻辑,我猜测您是想使用一个计数器来控制游戏猜测次数。以下是修正后的代码示例:

counts = 3
answer = random.randint(1, 10)

while counts > 0:
    temp = input("不妨猜一下小甲鱼现在心里的是哪个数: ")
    guess = int(temp)

    if guess == answer:
      print("你是小甲鱼心里的蛔虫嘛?!")
      print("哼,猜中了也没有奖励")
      break
    else:
      if guess > answer:
            print("猜大了")
      else:
            print("猜小了")
      counts -= 1

if counts == 0:
    print("机会用完了,小甲鱼心里的数字是:", answer)

如此修改可以使得游戏运行3次猜测机会,同时也修正了`if`条件判断不完整的问题。在`else`语句中,应该继续完成`if...else`的结构。注意在编辑代码时要确保缩进一致哦!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。

zyx2012 发表于 2025-1-4 09:37:54

???<ount是什么东西

yacouxue 发表于 昨天 18:16

import random

secret = random.randint(1, 10)
temp = input("不妨猜一下小甲鱼现在心里想的是哪个数字:")
guess = int(temp)
times = 1

while (guess != secret) and (times < 3):
    if guess > secret :
      print ("哥,大了大了")
    else:
      print ("嘿,小了小了")

      temp = input("请再试试把:")
      guess = int(temp)
      times = times + 1

if (times <=3) and (guess == secret):
    print("哎呀,你是小甲鱼心里的蛔虫吗?!")
    print("哼,猜中了也没有奖励噢")
else:
    print("唔,给三次机会都猜错,不和你玩了!")


请帮忙看下哪里错了,点击run时,选择大点的数字,例如8时,就会满屏显示“哥,大了大了”,一直到idle显示框底部。初学者,非常感谢。
页: [1]
查看完整版本: while <ounts >0: