cleanpy 0.1.3

Python 3.12+ 最佳实践知识库 - MCP 服务器
Documentation
# Python 3.12 开发最佳实践 - 文档索引

> 综合指南:Python 3.12 现代开发的最佳实践、工具和模式
>
> 最后更新:2025年1月

---

## 📚 文档目录

### 01. 新特性

Python 3.12 的核心语言改进和新功能。

- [PEP 695: 泛型语法]./01_新特性/PEP695_泛型语法.md - 更简洁的泛型类和函数
- [PEP 701: F-String 增强]./01_新特性/PEP701_FString增强.md - 更灵活的 f-string 语法
- [PEP 698: Override 装饰器]./01_新特性/PEP698_Override装饰器.md - 明确标记重写方法
- [改进的错误消息]./01_新特性/改进的错误消息.md - 更有帮助的错误提示
- [性能改进]./01_新特性/性能改进.md - ~5% 整体性能提升
- [PEP 669: 监控 API]./01_新特性/PEP669_监控API.md - 低影响监控和调试
- [PEP 684: 子解释器]./01_新特性/PEP684_子解释器.md - 独立 GIL 的子解释器
- [Linux Perf 支持]./01_新特性/LinuxPerf支持.md - 系统级性能分析

### 02. 项目结构

Python 项目的组织和布局最佳实践。

- [扁平布局]./02_项目结构/扁平布局.md - 推荐的项目结构
- [目录组织原则]./02_项目结构/目录组织原则.md - 按功能分组的组织策略
- [命名约定]./02_项目结构/命名约定.md - 文件、类、函数命名规范
- [特殊文件]./02_项目结构/特殊文件.md - `__init__.py`, `py.typed` 等
- [pyproject.toml 配置]./02_项目结构/pyproject.toml配置.md - 项目配置文件

### 03. 依赖管理

使用 UV 进行现代包管理。

- [UV 简介]./03_依赖管理/UV简介.md - 快速、现代的包管理器
- [UV 高级功能]./03_依赖管理/UV高级功能.md - 工作区、锁文件、发布
- [虚拟环境最佳实践]./03_依赖管理/虚拟环境最佳实践.md - 环境隔离和管理

### 04. 类型提示

静态类型检查和类型提示最佳实践。

- [基本类型提示]./04_类型提示/基本类型提示.md - 基础类型注解
- [高级类型提示]./04_类型提示/高级类型提示.md - 协议、泛型、高级特性
- [Basedpyright 配置]./04_类型提示/Basedpyright配置.md - 现代类型检查器

### 05. 代码质量

使用 Ruff 进行代码质量保证。

- [Ruff 简介]./05_代码质量/Ruff简介.md - 一体化 lint 和格式化工具
- [Ruff 配置]./05_代码质量/Ruff配置.md - 详细配置选项
- [Pre-Commit 钩子]./05_代码质量/PreCommit钩子.md - 自动代码质量检查

### 06. 测试

使用 Pytest 进行全面测试。

- [Pytest 简介]./06_测试/Pytest简介.md - Python 测试的事实标准
- [Fixtures 使用]./06_测试/Fixtures使用.md - 测试设置和拆卸
- [参数化测试]./06_测试/参数化测试.md - 高效的测试参数化

### 07. 异步编程

Asyncio 和异步编程模式。

- [Asyncio 基础]./07_异步编程/Asyncio基础.md - 异步编程入门
- [Worker Pool 模式]./07_异步编程/WorkerPool模式.md - 并发任务处理

### 08. 性能优化

性能分析和优化技术。

- [性能分析工具]./08_性能优化/性能分析工具.md - cProfile, line_profiler, memory_profiler
- [通用优化技术]./08_性能优化/通用优化技术.md - 实用优化模式

### 09. 安全

OWASP 安全最佳实践。

- [OWASP #1: 注入攻击]./09_安全/OWASP01_注入攻击.md - SQL 注入防护
- [OWASP #2: 破损的认证]./09_安全/OWASP02_破损的认证.md - 安全密码处理
- [OWASP #3: 敏感数据暴露]./09_安全/OWASP03_敏感数据暴露.md - 机密管理和加密

---

## 🚀 快速开始

1. **创建新项目**
   ```bash
   uv init my-project
   cd my-project
   uv venv
   source .venv/bin/activate
   ```

2. **添加依赖**
   ```bash
   uv add requests pydantic
   uv add --dev pytest ruff basedpyright
   ```

3. **配置工具**
   - 复制 [pyproject.toml 配置]./02_项目结构/pyproject.toml配置.md
   - 设置 [Ruff]./05_代码质量/Ruff配置.md 和 [Basedpyright]./04_类型提示/Basedpyright配置.md

4. **开始编码**
   - 遵循 [命名约定]./02_项目结构/命名约定.md
   - 使用 [类型提示]./04_类型提示/基本类型提示.md
   - 编写 [测试]./06_测试/Pytest简介.md

---

## 📖 推荐学习路径

### 初学者
1. [扁平布局]./02_项目结构/扁平布局.md - 项目结构
2. [UV 简介]./03_依赖管理/UV简介.md - 包管理
3. [基本类型提示]./04_类型提示/基本类型提示.md - 类型注解
4. [Pytest 简介]./06_测试/Pytest简介.md - 测试基础

### 中级开发者
1. [PEP 695: 泛型语法]./01_新特性/PEP695_泛型语法.md - Python 3.12 新特性
2. [高级类型提示]./04_类型提示/高级类型提示.md - 高级类型系统
3. [Ruff 配置]./05_代码质量/Ruff配置.md - 代码质量工具
4. [Asyncio 基础]./07_异步编程/Asyncio基础.md - 异步编程

### 高级开发者
1. [性能改进]./01_新特性/性能改进.md - Python 3.12 性能
2. [性能分析工具]./08_性能优化/性能分析工具.md - 性能优化
3. [Worker Pool 模式]./07_异步编程/WorkerPool模式.md - 高级异步模式
4. [OWASP 安全最佳实践]./09_安全/OWASP01_注入攻击.md - 安全编程

---

## 🛠️ 工具链推荐

| 用途 | 工具 | 文档链接 |
|------|------|----------|
| 包管理 | UV | [UV 简介]./03_依赖管理/UV简介.md |
| 类型检查 | Basedpyright | [Basedpyright 配置]./04_类型提示/Basedpyright配置.md |
| Lint & 格式化 | Ruff | [Ruff 简介]./05_代码质量/Ruff简介.md |
| 测试 | Pytest | [Pytest 简介]./06_测试/Pytest简介.md |
| 性能分析 | cProfile | [性能分析工具]./08_性能优化/性能分析工具.md |

---

## 📝 贡献

欢迎为本文档做出贡献!如果您发现错误或有改进建议,请提交 Issue 或 Pull Request。

---

## 📄 许可

本文档遵循 CC BY-SA 4.0 许可协议。

---

**文档版本**: 1.0.0
**最后更新**: 2025年1月
**Python 版本**: 3.12+