IntuitionX_agent/README.md
2026-01-01 17:48:45 +08:00

124 lines
3.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Python 项目模板
一个标准化的 Python 项目开发模板,集成了配置管理、日志系统和 Pydantic 数据验证。
## 特性
- 🔧 **配置管理**: 基于 YAML 的配置文件,使用 Pydantic 进行数据验证
- 📝 **日志系统**: 集成 Loguru支持控制台和文件输出自动轮转和压缩
- 🏗️ **标准结构**: 清晰的项目目录结构,便于维护和扩展
-**类型安全**: 使用 Pydantic 模型确保配置数据的类型安全
- 🔄 **单例模式**: 日志管理器采用单例模式,确保全局唯一实例
## 项目结构
```
├── config/ # 配置文件
│ └── config.yaml # 主配置文件
├── examples/ # 使用示例
│ ├── example_config_loader.py
│ └── example_logger.py
├── src/ # 源代码
│ ├── core/ # 核心功能模块
│ ├── models/ # 数据模型
│ │ ├── __init__.py
│ │ └── config_models.py # 配置数据模型
│ ├── modules/ # 业务模块
│ └── utils/ # 工具类
│ ├── config_loader.py # 配置加载器
│ └── logger.py # 日志管理器
├── tmp/ # 临时文件
│ └── log/ # 日志文件
├── main.py # 程序入口
├── pyproject.toml # 项目配置
└── README.md
```
## 快速开始
### 环境要求
- Python >= 3.12
- uv (推荐) 或 pip
### 安装依赖
使用 uv (推荐):
```bash
uv sync
pre-commit install # 可选
```
或使用 pip:
```bash
pip install -r requirements.txt
```
### 运行项目
```bash
python main.py
```
## 核心组件
### 1. 配置管理
配置系统使用 Pydantic 进行数据验证,确保配置的正确性。
```python
from src.utils.config_loader import get_config_loader
# 获取配置加载器
loader = get_config_loader()
# 验证并加载配置
config = loader.validate_config()
# 获取日志配置
log_config = loader.get_log_config()
```
### 2. 日志系统
基于 Loguru 的日志系统,支持多种输出格式和自动轮转。
```python
from src.utils.logger import get_logger
# 获取日志记录器
logger = get_logger("MODULE_NAME")
# 记录日志
logger.info("这是一条信息日志")
logger.error("这是一条错误日志")
```
## 开发
### 添加新模块
1.`src/modules/` 下创建新的业务模块
2.`src/core/` 下添加核心功能
3.`src/utils/` 下添加工具函数
### 添加新配置
1.`src/models/config_models.py` 中定义新的配置模型
2.`config/config.yaml` 中添加对应配置
3. 更新配置加载器以支持新配置
### 日志使用规范
- 使用有意义的模块标签: `get_logger("API")`, `get_logger("DATABASE")`
- 合理使用日志级别: DEBUG < INFO < WARNING < ERROR < CRITICAL
- 记录关键操作和错误信息
### 代码风格
遵循 PEP 8 代码风格指南保持代码整洁和一致性基于ruff进行代码检查和格式化
## 作者
wds @ (wdsnpshy@163.com)