专为洛阳中考信息技术考试设计的 Python 学习 Web 应用。提供课程学习、知识点查阅、模拟测试等功能,通过 Capacitor 可打包为 Android APK。
| 功能 | 说明 |
|---|---|
| 课程学习 | 5 课(零~四)× 3 节,每节含知识点分页讲解、选择题测验、代码任务题 |
| 课后 OJ | 每课 3 道 OJ 编程题,内置 Python 模拟运行时自动判题 |
| 知识点 | 学完课程解锁对应知识点卡片,支持搜索查阅 |
| 模拟测试 | 3 套综合测试卷(选择 + 填空 + OJ),全部课程完成后解锁 |
| 自由运行 | 三套测试全部及格后解锁,提供自由 Python 代码编辑运行环境 |
| 开发者面板 | 关于页点击制作者名 5 次 → 输入密钥 EASYPY_DEV_2026 激活 |
- 前端框架: React 19 + TypeScript
- 构建工具: Vite 6
- UI 组件库: MUI (Material UI)
- 状态管理: Zustand(localStorage 持久化)
- 代码编辑器: CodeMirror 6 (@uiw/react-codemirror)
- 路由: react-router-dom v7
- 移动端打包: Capacitor
# 安装依赖
npm install
# 启动开发服务器
npx vite --port 5173
# 构建生产版本
npx vite buildsrc/
├── types/index.ts # 类型定义
├── store/useStore.ts # Zustand 全局状态 + localStorage
├── utils/pythonRuntime.ts # Python 模拟运行时
├── data/ # 课程 / 知识点 / 测试数据
│ ├── course0-4.ts # 5 课完整内容
│ ├── knowledge.ts # 17 个知识点
│ ├── tests.ts # 3 套测试卷
│ └── index.ts # 数据聚合
├── pages/ # 页面组件
│ ├── MainPage.tsx # 主界面(课程 / 知识点 / 测试 / 自由运行)
│ ├── CourseListPage.tsx # 课程列表(按顺序解锁)
│ ├── CoursePage.tsx # 课程学习(知识点→选择题→任务题→OJ)
│ ├── KnowledgePage.tsx # 知识点查阅
│ ├── TestListPage.tsx # 测试列表
│ ├── TestPage.tsx # 测试作答 + 得分分析
│ ├── FreeRunPage.tsx # 自由运行环境
│ ├── AboutPage.tsx # 关于 + 彩蛋入口
│ └── DevPanelPage.tsx # 开发者面板
├── components/
│ ├── KnowledgeRenderer.tsx # 知识点内容渲染
│ └── CodeEditor.tsx # CodeMirror 封装
├── theme.ts # MUI 主题
├── App.tsx # 路由配置
└── main.tsx # 入口
| 课程 | 内容 | 节数 | OJ 题 |
|---|---|---|---|
| 第零课 | 计算机基础与 Python 入门 | 3 | 3 |
| 第一课 | 输入输出与顺序结构 | 3 | 3 |
| 第二课 | 分支结构与逻辑判断 | 3 | 3 |
| 第三课 | 循环结构与累加计数 | 3 | 3 |
| 第四课 | 综合应用与算法初步 | 3 | 3 |
内置的 Python 模拟运行时支持中考要求的全部语法:
- 输出:
print() - 输入:
input() - 变量: 赋值、复合赋值(
+=-=*=/=) - 类型:
int()float()str()bool()len()round() - 运算:
+-*///%**、字符串重复 - 比较:
==!=><>=<= - 逻辑:
andornot - 分支:
ifelifelse - 循环:
for in range()while - 字符串:
len()、索引s[0]、.isdigit().isupper().islower().split()、遍历
# 1. 安装 Capacitor
npm install @capacitor/core @capacitor/cli
# 2. 初始化
npx cap init EasyPy com.easypy.app
# 3. 构建 Web 应用
npx vite build
# 4. 添加 Android 平台
npx cap add android
# 5. 同步
npx cap sync
# 6. 打开 Android Studio 打包 APK
npx cap open android在 Android Studio 中打开后:
- 等待 Gradle 同步完成
- 点击 Build → Build Bundle(s) / APK(s) → Build APK(s)
- 生成的 APK 在
android/app/build/outputs/apk/debug/
# 构建 Web 并同步
npx vite build
npx cap sync android
# 设置环境变量并编译(Windows PowerShell)
$env:JAVA_HOME = "C:\Program Files\Microsoft\jdk-21.0.7.6-hotspot"
$env:ANDROID_HOME = "$env:LOCALAPPDATA\Android\Sdk"
cd android
.\gradlew assembleDebug
# APK 路径: android/app/build/outputs/apk/debug/app-debug.apk注意:打包 APK 需要安装 Android Studio(含 Android SDK)和 JDK 17+。
ColaSensei - Python & Web 开发者 / 编程教育爱好者
- GitHub: ColaSensei
- 哔哩哔哩: ColaSensei
MIT