Python刷题系统实训——环境准备笔记一
暑期闲暇时间,我跟随B站教程系统学习Python后端开发。早在初中创客培训阶段,我就了解到Python语法简洁、应用广泛,是一门“万金油”编程语言,但一直没有系统实操学习。本次跟随教程实战开发计算机理论在线刷题系统,从小项目入手巩固Python Web开发能力,记录完整环境搭建过程。
一、开发环境说明
•操作系统:Windows 11
•软件环境:Python 3.13
•编程工具:PyCharm 2022
二、搭建虚拟开发环境
为保证项目依赖独立、不与全局环境冲突,本次项目采用 Virtualenv 虚拟环境管理依赖,搭建步骤如下:
1.新建项目根目录,命名为 exam,用于存放整个刷题系统项目文件。
2.使用 PyCharm 新建项目,选择刚创建的 exam 目录,解释器类型选择 Virtualenv 虚拟环境。
3.若 PyCharm 自动创建虚拟环境失败,可手动在终端执行命令创建: 创建虚拟环境(myenv 为自定义环境名): python -m venv myenv激活 Windows 虚拟环境: myenv\Scripts\activate
4.激活成功后,在 PyCharm 设置中选择解释器路径:exam\myenv\Script\python.exe,绑定当前项目虚拟环境。
三、安装项目依赖包
为提升国内下载速度,首先配置清华 PyPI 镜像源,统一加速安装所有第三方库:
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
本项目基于 FastAPI + SQLAlchemy ORM 开发,核心依赖安装命令:
pip install fastapi uvicorn sqlalchemy python-multipart
依赖包功能说明
•fastapi:主流高性能 Python Web 框架,提供路由、请求接收、依赖注入等核心功能,项目中用到的 Request、Form、Depends 均来自该库。
•uvicorn:ASGI 异步服务器,用于启动和运行 FastAPI 项目,是项目运行的核心服务工具。
•sqlalchemy:Python 主流 ORM 数据库框架,本项目使用其 2.0 新版语法,实现数据表映射、数据库查询、会话管理,包含 DeclarativeBase、mapped_column、Session 等核心功能。
•python-multipart:表单解析依赖,用于接收前端登录、答题提交的 Form 表单数据,是登录接口必备依赖。
•starlette:FastAPI 底层自带框架,无需手动安装,提供模板渲染(Jinja2Templates)、静态文件挂载(StaticFiles)功能。
四、环境总结
本次完成了独立虚拟环境搭建、国内镜像源配置、项目全套依赖安装,隔离了全局环境干扰,为后续实现用户登录、随机抽题、在线答题、自动判分等刷题系统核心功能,打好了完整的运行环境基础。