Sen descrición

YueYunyun 5f9fb6abd5 Create README.md hai 4 meses
README.md 5f9fb6abd5 Create README.md hai 4 meses

README.md

智能题库学习系统 (Smart Question Bank Learning System)

项目简介

这是一个基于 Python 开发的智能题库学习系统,旨在帮助学生进行高效的题目练习和知识掌握。系统具备题目管理、智能练习、错题本、学习进度追踪等功能,让学习更有针对性和效果。

主要功能

1. 题库管理

  • 支持多学科题目录入(数学、语文、英语等)
  • 题目分类管理(按照难度、知识点、题型等)
  • 支持多种题型(选择题、填空题、简答题等)
  • 每道题目包含详细解析和知识点说明
  • 题目版本控制,记录修改历史
  • 题目审核流程,确保题目质量
  • 题目标签系统,方便分类和搜索

2. 智能练习

  • 根据学生水平自动推荐适合的题目
  • 支持自选题型和难度进行练习
  • 练习过程中即时查看答案和解析
  • 练习完成后显示得分和错题分析
  • 优化推荐算法,结合用户历史表现和学习目标
  • 个性化推荐,根据用户偏好推荐题目
  • 自适应练习模式,动态调整题目难度

3. 错题本功能

  • 自动收集做错的题目
  • 错题分类整理
  • 支持错题重复练习
  • 错题数据分析,找出薄弱知识点
  • 错题原因分析,帮助用户理解错误原因
  • 错题标签,方便分类和复习
  • 错题相似题推荐,巩固薄弱知识点

4. 学习进度追踪

  • 展示每日/每周/每月的练习情况
  • 知识点掌握程度分析
  • 学习时长统计
  • 成绩进步曲线
  • 知识点掌握预测,预估用户掌握程度
  • 学习路径规划,提供个性化学习建议
  • 学习目标设置,帮助用户明确学习方向
  • 手动考试成绩录入,记录各类考试成绩
  • 考试成绩分析,生成成绩报告

技术架构

  • 后端:Python 3.13
  • 数据库:Mysql
  • 用户界面:Web 界面

数据库设计

题目表(questions)

  • id: 题目 ID
  • subject: 学科
  • type: 题型
  • difficulty: 难度等级
  • content: 题目内容
  • answer: 答案
  • explanation: 解析
  • knowledge_points: 相关知识点
  • version: 题目版本
  • status: 审核状态
  • tags: 题目标签
  • creator_id: 题目创建者
  • reviewer_id: 题目审核者

用户表(users)

  • id: 用户 ID
  • username: 用户名
  • password: 密码
  • grade: 年级
  • create_time: 创建时间
  • preferences: 学习偏好
  • goals: 学习目标
  • learning_style: 学习风格
  • target_score: 目标分数

练习记录表(practice_records)

  • id: 记录 ID
  • user_id: 用户 ID
  • question_id: 题目 ID
  • is_correct: 是否正确
  • practice_time: 练习时间
  • time_spent: 用时
  • steps: 答题步骤
  • thinking_time: 思考时间
  • confidence_level: 答题信心
  • feedback: 用户反馈

知识点表(knowledge_points)

  • id: 知识点 ID
  • name: 知识点名称
  • description: 知识点描述
  • subject: 所属学科
  • difficulty: 难度等级
  • prerequisite: 先修知识点

学习路径表(learning_paths)

  • id: 路径 ID
  • user_id: 用户 ID
  • target_knowledge_point: 目标知识点
  • path: 学习路径
  • progress: 当前进度

考试成绩表(exam_scores)

  • id: 成绩 ID
  • user_id: 用户 ID
  • exam_name: 考试名称
  • subject: 考试科目
  • score: 考试成绩
  • total_score: 总分
  • exam_date: 考试日期
  • remark: 备注

使用说明

  1. 系统启动后,首先需要注册/登录账号
  2. 选择想要练习的学科和题型
  3. 开始答题,系统会记录答题情况
  4. 可以随时查看错题本和学习进度
  5. 在成绩管理页面手动录入考试成绩

项目结构

smart-question-bank/
├── backend/              # 后端服务
│   ├── src/              # 源代码目录
│   │   ├── common/       # 公共模块
│   │   ├── exception/    # 异常处理
│   │   ├── models/       # 数据模型
│   │   ├── services/     # 业务逻辑
│   │   ├── controllers/  # API控制器
│   │   ├── middleware/   # 中间件
│   │   ├── utils/        # 工具类
│   │   ├── config/       # 配置文件
│   │   ├── migrations/   # 数据库迁移
│   │   └── main.py       # 程序入口
│   ├── tests/            # 测试目录
│   ├── requirements.txt  # 依赖包列表
│   └── Dockerfile        # Docker配置
├── frontend/             # 前端应用
│   ├── public/           # 静态资源
│   ├── src/              # 源代码目录
│   │   ├── assets/       # 静态资源
│   │   ├── components/   # 通用组件
│   │   ├── views/        # 页面视图
│   │   ├── router/       # 路由配置
│   │   ├── store/        # 状态管理
│   │   ├── api/          # API接口
│   │   ├── utils/        # 工具函数
│   │   ├── styles/       # 全局样式
│   │   └── main.js       # 程序入口
│   ├── tests/            # 测试目录
│   ├── package.json      # 项目配置
│   ├── vue.config.js     # Vue配置
│   └── Dockerfile        # Docker配置
├── docs/                 # 文档目录
│   ├── api/              # API文档
│   └── design/           # 设计文档
├── scripts/              # 脚本目录
│   ├── deploy/           # 部署脚本
│   └── migration/        # 数据迁移脚本
├── docker-compose.yml    # Docker Compose配置
├── README.md             # 项目说明
└── .gitignore            # Git忽略配置

安装与运行

  1. 安装依赖

    pip install -r requirements.txt
    
  2. 配置数据库

  • 创建 MySQL 数据库
  • 修改 src/common/config.py 中的数据库连接配置
  1. 运行系统

    python src/main.py
    

已实现功能

1. 图形用户界面

  • 使用 PyQt5 开发桌面应用界面
  • 提供友好的用户交互体验
  • 支持题目展示、答题、结果查看等功能

2. 在线题库更新

  • 实现题库云端同步功能
  • 支持自动更新最新题目
  • 提供题目审核机制

3. 做题时间限制

  • 支持按题型设置时间限制
  • 提供倒计时功能
  • 超时自动提交答案

4. 班级管理

  • 教师创建和管理班级
  • 学生加入班级
  • 班级练习统计和分析

5. 题目难度评估

  • 基于学生答题数据自动评估题目难度
  • 动态调整题目难度系数
  • 提供难度分布可视化

6. 智能出题算法

  • 基于知识图谱的题目推荐
  • 个性化出题策略
  • 自适应难度调整