# Python项目模板 这是一个现代化的Python项目模板,使用FastAPI框架构建。 ## 项目特性 - 🚀 **FastAPI**: 现代、快速的Web框架 - 🗄️ **SQLAlchemy**: 强大的ORM框架 - 🔧 **Alembic**: 数据库迁移工具 - 📊 **Pandas & NumPy**: 数据处理和分析 - 🧪 **Pytest**: 测试框架 - 🎨 **Black**: 代码格式化 - 📝 **Loguru**: 现代化日志系统 ## 快速开始 ### 1. 安装依赖 ```bash # 创建虚拟环境 python -m venv venv # 激活虚拟环境 (Windows) venv\Scripts\activate # 激活虚拟环境 (Linux/Mac) source venv/bin/activate # 安装依赖 pip install -r requirements.txt ``` ### 2. 环境配置 复制 `.env.example` 文件为 `.env` 并配置环境变量: ```bash cp .env.example .env ``` ### 3. 运行项目 ```bash # 开发模式 uvicorn app.main:app --reload --host 0.0.0.0 --port 8000 # 生产模式 uvicorn app.main:app --host 0.0.0.0 --port 8000 ``` ### 4. 访问API文档 - Swagger UI: http://localhost:8000/docs - ReDoc: http://localhost:8000/redoc ## 项目结构 ``` new-python-project/ ├── app/ # 应用主目录 │ ├── __init__.py │ ├── main.py # 应用入口 │ ├── api/ # API路由 │ ├── core/ # 核心配置 │ ├── models/ # 数据模型 │ ├── schemas/ # Pydantic模式 │ ├── services/ # 业务逻辑 │ └── utils/ # 工具函数 ├── tests/ # 测试文件 ├── alembic/ # 数据库迁移 ├── .env.example # 环境变量示例 ├── requirements.txt # 项目依赖 └── README.md # 项目说明 ``` ## 开发指南 ### 代码格式化 ```bash # 格式化代码 black . # 检查代码风格 flake8 . # 类型检查 mypy . ``` ### 运行测试 ```bash # 运行所有测试 pytest # 运行特定测试文件 pytest tests/test_api.py # 生成覆盖率报告 pytest --cov=app tests/ ``` ## 数据库操作 ### 创建迁移 ```bash alembic revision --autogenerate -m "描述变更" ``` ### 应用迁移 ```bash alembic upgrade head ``` ## 贡献指南 1. Fork 项目 2. 创建功能分支 (`git checkout -b feature/AmazingFeature`) 3. 提交更改 (`git commit -m 'Add some AmazingFeature'`) 4. 推送到分支 (`git push origin feature/AmazingFeature`) 5. 打开 Pull Request ## 许可证 本项目采用 MIT 许可证 - 查看 [LICENSE](LICENSE) 文件了解详情。