一、基本概要

在 Python 入门学习中,猜数字游戏是经典的实战案例。它既能帮助理解基础语法(条件判断、循环、异常处理等),又能直观体现程序的交互逻辑。本文将从零开始,一步步实现一个功能完整的猜数字游戏,并讲解核心思路与可扩展方向,适合 Python 初学者参考。

Driver 202305050709 李慧宇
Navigator 202305050713 朱洺汶
Navigator 202305050703 杨睿涵

二、项目概述

1. 项目名称
简易猜数字游戏(Guess the Number Game)
2. 项目目标
开发一款简单易上手的交互式猜数字游戏,帮助 Python 初学者理解基础语法(如循环、条件判断、异常处理)和程序逻辑设计,同时提供友好的用户体验,支持单人模式下的数字猜测互动。
3. 核心功能
• 系统随机生成指定范围(默认 1-100)的目标数字;
• 玩家通过输入数字进行猜测,系统实时反馈 “猜大了”“猜小了” 或 “猜对了”;
• 自动记录玩家的猜测次数,游戏结束时展示结果;
• 输入验证:过滤非数字、超出范围的无效输入,保证程序稳定性。
4. 技术栈
• 开发语言:Python 3.x
• 核心库:random(用于生成随机数)
• 运行环境:Windows/macOS/Linux 系统的 Python 解释器
5. 适用场景
• Python 入门学习者的实战练习案例;
• 零基础用户体验编程交互的趣味工具;
• 可作为教学演示,讲解循环、条件判断等基础语法的应用。
6. 项目意义
• 降低编程学习门槛,通过趣味游戏让初学者直观感受程序设计逻辑;
• 演示 “输入 - 处理 - 输出” 的基本程序流程,培养问题拆解能力;
• 提供可扩展的基础框架,支持后续添加难度分级、历史记录等功能,锻炼代码迭代思维。
 

三、小组分工

1.李慧宇

负责游戏核心流程与数据处理,. 生成随机目标数字(控制范围、难度关联); 编写猜测判断逻辑(大 / 小 / 正确);统计猜测次数与游戏状态管理。

2.朱洺汶

交互与验证开发,负责用户交互与输入合法性保障,设计命令行交互提示,实现输入验证(非数字过滤、范围校验);优化用户体验(错误提示友好化)。

3.杨睿涵

负责功能扩展与程序稳定性测试,开发扩展功能(如难度分级、历史记录保存);编写测试修复 bug 并优化代码可读性(添加注释、规范格式)。

四、代码编写

import random

def guess_number_game():
    target_number = random.randint(1, 100)
    attempts = 0
    
    while True:
        user_input = input("猜一个1到100之间的数字: ")
        
        try:
            guess = int(user_input)
        except ValueError:
            print("请输入有效的整数")
            continue
            
        if guess < 1 or guess > 100:
            print("数字必须在1到100之间")
            continue
            
        attempts += 1
        
        if guess < target_number:
            print("太小了,再试一次")
        elif guess > target_number:
            print("太大了,再试一次")
        else:
            print(f"恭喜!你猜对了,答案是{target_number},总共用了{attempts}次尝试")
            break

if __name__ == "__main__":
    guess_number_game()
 

import random

def guess_number_game():
    target_number = random.randint(1, 100)
    attempts = 0
    
    while True:
        user_input = input("猜一个1到100之间的数字: ")
        
        try:
            guess = int(user_input)
        except ValueError:
            print("请输入有效的整数")
            continue
            
        if guess < 1 or guess > 100:
            print("数字必须在1到100之间")
            continue
            
        attempts += 1
        
        if guess < target_number:
            print("太小了,再试一次")
        elif guess > target_number:
            print("太大了,再试一次")
        else:
            print(f"恭喜!你猜对了,答案是{target_number},总共用了{attempts}次尝试")
            break

if __name__ == "__main__":
    guess_number_game()
 

五、代码的测试

六、总结

1.功能说明

  • 游戏会随机生成1到100之间的整数作为目标数字
  • 玩家通过命令行输入猜测的数字
  • 程序会提示猜测是太大还是太小
  • 当玩家猜中时,显示总尝试次数

2.功能拓展

  • 增加难度分级

  • 简单:1-100,10 次机会
  • 中等:1-500,12 次机会(加入 “接近目标” 提示:如 “距离 bug 值小于 50”)
  • 困难:1-1000,限时 30 秒(加入倒计时功能)。
  • 强化程序员特性

    记录 “调试日志”:保存每次输入的数值和反馈,游戏结束后打印 “调试报告”,加入 “代码注释模式”:输入 “//” 可查看当前剩余范围提示(类似注释辅助调试)。

这个小游戏看似简单,却包含了随机数生成、循环控制、条件判断、异常处理等基础编程逻辑。更重要的是,通过 “调试 bug” 的主题设计,能让我们在娱乐中加深对二分法等算法的理解。

你觉得还能加入哪些程序员专属彩蛋?欢迎在评论区留言,也可以晒出你的拓展代码~ 点赞收藏,下次摸鱼就能玩起来!

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐