You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
4 months ago | |
|---|---|---|
| .. | ||
| README.md | 4 months ago | |
README.md
数学冒险岛 - 互动式数学学习软件
📘 项目简介
“数学冒险岛” 是一款面向小学、初中和高中学生的互动式数学学习软件。
通过 游戏化界面设计 与 分学段题目设置,让数学练习更具趣味性与挑战性。
软件支持用户邮件注册登录、学段选择、自定义题目数量、在线答题及结果反馈等功能,
适合各学段学生进行数学能力训练与提升。
✨ 功能特点
- 用户系统:支持账号注册(含邮箱验证码)、登录、密码修改及退出功能
- 学段划分:分为小学、初中、高中三个学段,自动匹配不同难度题目
- 个性化练习:可自定义题目数量(10–30 题),满足多样化练习需求
- 友好界面:采用渐变卡通风格设计,搭配 Emoji 元素增强趣味性
- 即时反馈:答题完成后即时展示得分结果,支持重新挑战
- 数据管理:自动保存用户试卷记录,实现持久化存储
📁 项目结构
数学冒险岛/
├── core/ # 核心逻辑模块
│ ├── data_handler.py # 数据处理与文件存储
│ ├── email_service.py # 邮件验证码发送模块
│ ├── question_bank.py # 题目生成与难度匹配
│ ├── user_system.py # 用户注册、登录与管理
│
├── ui/ # 图形界面模块(PyQt5 实现)
│ ├── login_ui.py # 登录界面
│ ├── main_window.py # 主窗口与页面切换逻辑
│ ├── question_ui.py # 题目答题界面
│ ├── register_ui.py # 注册界面
│ ├── result_ui.py # 答题结果展示界面
│ └── user_management_ui.py # 用户信息管理界面
│
├── generated_papers/ # 用户完成的试卷存储目录
├── main.py # 程序入口(运行此文件启动)
安装说明
环境要求
- Python 版本:
3.7+ - 主要依赖:
PyQt5(界面框架)random(随机题目生成)smtplib(邮箱验证码发送)
安装步骤
# 克隆仓库(若有)
git clone <仓库地址>
# 进入项目目录
cd math_adventure_island
# 安装依赖
pip install PyQt5
界面展示
以下表格展示了软件主要界面的功能与设计亮点:
| 页面名称 | 界面描述 | 主要功能 | 设计特点 |
|---|---|---|---|
| 主页面 | 登录 / 注册入口页面 | 用户登录、账号注册、退出系统 | 粉绿渐变背景、卡通风格、Emoji 装饰 |
| 学段选择页 | 选择学习阶段 | 小学 / 初中 / 高中学段选择、用户信息显示 | 分学段色彩、清晰布局、渐变背景延续 |
| 题目数量页 | 设置练习题目数量 | 输入题目数量、开始练习、返回上一级 | 简洁输入框、范围提示、友好错误提示 |
| 答题页 | 进行数学题目练习 | 显示题目、选择答案、进度跟踪 | 清晰排版、选项高亮、进度指示、交互反馈 |
| 结果页 | 展示答题成绩和统计 | 显示得分、重新练习、返回主页 | 数据可视化、醒目得分、鼓励性设计 |
使用指南
注册账号
- 在主页面点击 “注册账号”
- 输入用户名、邮箱和密码
- 接收邮箱验证码并填写,完成注册
登录系统
- 点击主页面 “🎮 开始冒险”
- 输入注册的账号与密码进行登录
开始练习
- 登录后选择学段:
- 小学乐园
- 初中城堡
- 高中太空
- 输入题目数量(10–30 之间)
- 点击 “ 开始冒险” 进入答题环节
查看结果
- 完成全部题目后系统自动展示得分结果
- 可选择 “重新做题” 或返回主页继续挑战
开发说明
技术栈
- 语言: Python
- 框架: PyQt5
- 架构: 模块化设计 + QStackedWidget 页面切换
核心模块
| 文件名 | 主要功能 |
|---|---|
| main_window.py | 主窗口逻辑与页面切换管理 |
| question_bank.py | 题目生成与试卷管理 |
| email_service.py | 注册验证码生成与邮件发送 |
| data_handler.py | 文件存储与用户数据处理 |
界面设计
- 使用 QSS 样式表 实现渐变背景、圆角按钮、柔和阴影等效果
- 通过 QStackedWidget 实现多页面无缝切换
- 界面配色采用卡通风格,适合中小学生视觉体验
联系方式
如需反馈问题或提出改进建议,请联系: 1463365450@qq.com 或在 头歌 提交 Issue