鱼C论坛

 找回密码
 立即注册
查看: 2638|回复: 6

[已解决]While循环里面套while循环

[复制链接]
发表于 2021-4-5 15:50:17 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 AslanWu 于 2021-4-5 16:32 编辑

我想做一个猜数字的游戏,就类似于小甲鱼视频里那种,只不过我想做的是首先询问“猜猜我心里的数字”,在猜错之后会询问 “猜错了,是否需要再试一次”,如果回答是“是”,就返回第一个问题“猜猜我心里的数字”,如果回答“否”就结束程序,如果回答的是别的答案就一直重复问“猜错了,是否需要再试一次”。
整个问题我自己想的思路是while循环里面套一个while循环,但我想了半天还是没理清思路,能有大佬帮帮我吗,给个例子
最佳答案
2021-4-5 16:23:43
  1. import random

  2. go_on = '玩'

  3. while go_on == '玩':

  4.     num = random.randint(0,10)

  5.     guess = input('猜猜我心里的数字:')

  6.     while not guess.isdigit():
  7.         guess = input('必须输入纯数字,重新输入吧:')

  8.     guess = int(guess)

  9.     while guess != num:
  10.         switch = input('是否需要再试一次:')
  11.         if switch == '是':
  12.             guess = input('猜猜我心里的数字:')
  13.             while not guess.isdigit():
  14.                 guess = input('必须输入纯数字,重新输入吧:')
  15.             guess = int(guess)
  16.         elif switch == '否':
  17.             break
  18.         else:
  19.             switch = input('是否需要再试一次:')
  20.     else:
  21.         print('猜对了,真厉害!')

  22.     go_on = input('还玩吗(玩,不玩了):')

  23.     while go_on != '玩' and go_on != '不玩了':
  24.         go_on = input('还玩吗(玩,不玩了):')

  25.     if go_on == '不玩了':
  26.         break
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2021-4-5 16:01:25 | 显示全部楼层
  1. import random

  2. secret = random.randint(1,10)
  3. try:   
  4.     print('------------------我爱鱼C工作室------------------')
  5.     temp = input("不妨猜一下小甲鱼现在心里想的是哪个数字:")
  6.     guess = int(temp)
  7. except (ValueError,EOFError,KeyboardInterrupt):
  8.     print('输入错误!')
  9.     guess = secret
  10. while guess != secret:
  11.     temp = input("哎呀,猜错了,请重新输入吧:")
  12.     guess = int(temp)
  13.     if guess == secret:
  14.         print("我草,你是小甲鱼心里的蛔虫吗?!")
  15.         print("哼,猜中了也没有奖励!")
  16.     else:
  17.         if guess > secret:
  18.             print("哥,大了大了~~~")
  19.         else:
  20.             print("嘿,小了,小了~~~")
  21. print("游戏结束,不玩啦^_^")
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-4-5 16:08:11 | 显示全部楼层

你发给我的代码里第12行,他是直接让我‘‘哎呀,猜错了,重新输入”,我想要他问我“是否要再尝试一遍”怎么做呢
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-5 16:18:07 | 显示全部楼层
AslanWu 发表于 2021-4-5 16:08
你发给我的代码里第12行,他是直接让我‘‘哎呀,猜错了,重新输入”,我想要他问我“是否要再尝试一遍” ...

你的意思是加个是否继续猜的判断?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-5 16:23:43 | 显示全部楼层    本楼为最佳答案   
  1. import random

  2. go_on = '玩'

  3. while go_on == '玩':

  4.     num = random.randint(0,10)

  5.     guess = input('猜猜我心里的数字:')

  6.     while not guess.isdigit():
  7.         guess = input('必须输入纯数字,重新输入吧:')

  8.     guess = int(guess)

  9.     while guess != num:
  10.         switch = input('是否需要再试一次:')
  11.         if switch == '是':
  12.             guess = input('猜猜我心里的数字:')
  13.             while not guess.isdigit():
  14.                 guess = input('必须输入纯数字,重新输入吧:')
  15.             guess = int(guess)
  16.         elif switch == '否':
  17.             break
  18.         else:
  19.             switch = input('是否需要再试一次:')
  20.     else:
  21.         print('猜对了,真厉害!')

  22.     go_on = input('还玩吗(玩,不玩了):')

  23.     while go_on != '玩' and go_on != '不玩了':
  24.         go_on = input('还玩吗(玩,不玩了):')

  25.     if go_on == '不玩了':
  26.         break
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-5 16:24:47 | 显示全部楼层
本帖最后由 qq1151985918 于 2021-4-5 16:26 编辑
  1. num = 8

  2. while True:
  3.     guess = int(input("猜猜我心里的数字:"))
  4.     if guess != num:
  5.         isAgain = input("猜错了,是否需要再试一次?")
  6.         while isAgain not in ["是","否"]:
  7.             isAgain = input("猜错了,是否需要再试一次?")
  8.         if isAgain == "是":
  9.             continue
  10.         else:
  11.             break
  12.     else:
  13.         print("我草,你是小甲鱼心里的蛔虫吗?!")
  14.         break
  15. print("游戏结束,不玩啦^_^")
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-4-5 16:29:27 | 显示全部楼层
懂了懂了,感谢大佬们,我一直想着while了,没想到if也可以回到最初的答案,感谢
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-25 15:32

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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