Python 项目打包发布指南:从结构创建到 PyPI 上传
将开发完成的 Python 项目打包并发布,是与其他开发者共享代码、构建生态的重要步骤。本文将详细介绍如何创建一个标准的 Python 包,配置必要的元数据,构建分发包,并最终上传至 Python 包索引(PyPI)或测试环境 TestPyPI。
1. 环境准备
在开始之前,请确保你的开发环境已安装最新版本的 Python 和 pip。建议创建一个独立的虚拟环境以避免依赖冲突。
1.1 升级 pip
# Unix/macOS
python3 -m pip install --upgrade pip
# Windows
py -m pip install --upgrade pip
1.2 创建虚拟环境
推荐使用 venv 模块创建隔离环境:
python3 -m venv venv
source venv/bin/activate # Linux/macOS
venv\Scripts\activate # Windows
2. 项目结构设计
现代 Python 项目推荐采用 src 布局,这有助于避免本地导入与包导入的混淆,并简化命名空间管理。
2.1 目录结构
在根目录下创建如下结构:
packaging_tutorial/
└── src/
└── example_package_YOUR_USERNAME_HERE/
├── __init__.py
└── example.py
- src/: 存放源代码的目录,防止与测试脚本或临时文件混用。
- init.py: 使目录成为包,即使为空也需存在。
- example.py: 核心逻辑模块。
2.2 编写示例代码
打开 example.py 并添加基础功能:
def add_one(number):
"""
接收一个数字并返回加一后的结果。
Args:
number (int): 输入的数字
Returns:
int: 加一后的数字
"""
return number + 1
3. 配置文件与元数据
Python 包的配置主要依赖于 pyproject.toml 文件,它定义了构建系统、项目元数据和依赖项。
3.1 选择构建后端
构建后端负责将源代码转换为分发包(如 .whl 或 .tar.gz)。目前主流的后端包括 Hatchling、Setuptools、Flit 和 PDM。
在 pyproject.toml 中指定构建后端:


