鱼C论坛

 找回密码
 立即注册
查看: 1917|回复: 5

[已解决]关于第五讲小游戏改进

[复制链接]
发表于 2023-3-11 20:38:24 | 显示全部楼层 |阅读模式
2鱼币
那位朋友能帮我看一下我这个逻辑上哪里出错了吗
最佳答案
2023-3-11 20:38:25
应该改成:
  1. import random
  2. times = 3
  3. secret = random.randint(1,10)
  4. temp = input("不妨猜一下小甲鱼心里想的数字:")
  5. while not temp.isalnum():
  6.     temp = input("重新输入数字:")
  7. while (times > 0):
  8.     temp = int(temp)
  9.     times -= 1
  10.     if temp == secret:
  11.         print("你是小甲鱼心里的蛔虫吗?")
  12.         break
  13.     else:
  14.         if temp > sercret:
  15.             print("大了~")
  16.         elif temp < sercet:
  17.             print("小了~")
  18.         if times > 0:
  19.             temp = input("再猜一次吧:")
  20.             while temp.isalnum():    #把判断语句复制到这里
  21.                 temp = input("重新输入数字:")
  22. else:    #times <= 0才会进入这里
  23.     print("机会用光了")
复制代码
屏幕截图 2023-03-11 203724.png

最佳答案

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-3-11 20:38:25 | 显示全部楼层    本楼为最佳答案   
应该改成:
  1. import random
  2. times = 3
  3. secret = random.randint(1,10)
  4. temp = input("不妨猜一下小甲鱼心里想的数字:")
  5. while not temp.isalnum():
  6.     temp = input("重新输入数字:")
  7. while (times > 0):
  8.     temp = int(temp)
  9.     times -= 1
  10.     if temp == secret:
  11.         print("你是小甲鱼心里的蛔虫吗?")
  12.         break
  13.     else:
  14.         if temp > sercret:
  15.             print("大了~")
  16.         elif temp < sercet:
  17.             print("小了~")
  18.         if times > 0:
  19.             temp = input("再猜一次吧:")
  20.             while temp.isalnum():    #把判断语句复制到这里
  21.                 temp = input("重新输入数字:")
  22. else:    #times <= 0才会进入这里
  23.     print("机会用光了")
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-3-11 21:31:30 | 显示全部楼层
本帖最后由 鱼cpython学习者 于 2023-3-11 21:48 编辑

你的游戏里好像没有设计让用户再次输入的部分
可以将第一个循环移动到第二个循环中的
  1. guess = int(temp)
复制代码
前面
另外,提问最好把代码用代码格式贴上来,而不是截图发上来
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-3-11 23:16:56 | 显示全部楼层
  1. print ("重新输入!",end='')
复制代码

print后面不能有空格。
还有,
  1. print("再猜一下小甲鱼心里想的是哪个数字:", end=" ")
复制代码

你只打印了让用户输入的提示信息,但没让用户输入第二次猜的,
所以只会判断第一次的输入。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-3-12 11:21:34 | 显示全部楼层
KeyError 发表于 2023-3-11 23:16
print后面不能有空格。
还有,

空格是可以有的,只不过不符合PEP8代码规范,从语法上来说是可以成功运行的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-10-25 21:29:54 | 显示全部楼层
import random

secret = random.randint(1,10)
temp = input('请输入数字:')
guess = int(temp)
time = 10
while guess!=secret and time>0:
    if guess == secret:
        print ('恭喜你答对啦!')
        print ('答对的奖励就是没有奖励哦!')
    else:
        if guess > secret:
            print ('给个提示,这个数字大了哦!')
            print  ('再来一次吧:')
        if guess < secret:
            print ('给个提示,这个数字小了哦!')
            print  ('再来一次吧:')
    time = time - 1
    temp = input('哎呀!猜错了!注意只有十次机会哦!再来一次吧:')
    guess = int(temp)
    print ('恭喜你答对啦!')
    print ('答对的奖励就是没有奖励哦!')
print('游戏结束啦,玩的真开心!')
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-19 19:50

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表