第5期-猜数字
1 问题描述
制作一个满足如下功能的猜数游戏:
- 计算机随机生成一个100以内的正整数;
- 用户通过键盘输入数字,猜测计算机所生成的随机数。
- 限定用户的输入次数,如限定用户只能猜测五次,五次未成功,游戏结束
2 解题思路
首先,计算机随机生成整数,需要引入生成随机数的模块random
其次,定义函数,设置计算机生成数的范围及用户输入数字的次数
最后,用input函数获取用户输入的数字,并用if语句判断大小
3 解题方法

print("这是一个猜数字游戏,你可以输入1到100之间的数字,但只有5次机会") from random import randint def guess (start, end, maxTime): value = randint(start, end) for i in range(maxTime): prompt = '开始猜吧,请输入一个整数:' if i == 0 else '再猜一次:' try: guessNum = int(input(prompt)) if guessNum == value: print("恭喜你,猜对啦!") break elif guessNum > value: print("你猜的太大了!") else: print("你猜的太小了!") except: print("请输入整数") else: print("很遗憾,游戏结束") print("正确答案是:",value, "继续努力吧~") guess(1, 100, 5)
第1行: 简要介绍猜数字游戏的规则
第3行: 从生成随机数的模块random引入randint函数
第4行: 定义函数guess,传入参数start, end和maxTime
第5行: 创建变量value, 用randint函数确定计算机生成随机数的取值范围
第8行: 使用for循环控制最大猜测次数,次数用完还未猜对,则转到第23行,结束循环
第9行: 创建变量prompt, 如果用户输入的次数i为0,prompt为“开始猜吧,请输入一个整数:”;如果用户输入的次数i不为0,prompt为“再猜一次:”
第11行: 运用try...except异常处理结构,防止用户输入的不是整数,如果try块中的代码引发异常,就执行第21行except块中的代码
第12行: 创建变量guessNum,用input函数获取用户输入的数值,并用int函数将其转化为整型
第13-19行: 用if...elif...else语句判断用户输入数值的大小,若刚好等于计算机设定的数值,则打印"恭喜你,猜对啦!",并用break退出整个循环;若大于或小于计算机设定的数值,则分别打印输出"你猜的太大了!"或"你猜的太小了!"
第27行: 调用函数guess, 并为start, end和maxTime这三个参数分别赋值为1,100,5
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律