用途:指导创建、组织并分发可安装的 Python 包,覆盖从项目结构到发布 PyPI 的完整流程。
主要能力:介绍源码布局(src/package_name/)与扁平布局两种结构;讲解现代打包标准 PEP 517/518、PEP 621、PEP 660;对比 setuptools、hatchling、flit、poetry 等构建后端;演示 pyproject.toml 中项目元数据、依赖、可选依赖、入口点、包数据与工具配置的写法;说明 wheel 与 sdist 两种分发格式;涵盖 CLI 入口点(Click、argparse)、动态版本与 setuptools-scm、命名空间包、C 扩展、数据文件读取、语义化版本与依赖约束。
使用方式:典型流程为安装 build 与 twine,执行 python -m build 生成 dist/ 下的 .tar.gz 与 .whl,用 twine check dist/* 校验,先上传 TestPyPI 验证再发布正式 PyPI;开发期可用 pip install -e ".[dev]" 可编辑安装。发布可用 API token 或 GitHub Actions 自动化。
适用场景:发布开源库、构建带入口点的命令行工具、搭建私有包索引、多包项目与命名空间包、需要多平台 wheel 的项目。
限制:资料未提供具体收费、价格或平台支持范围;示例配置需按实际项目调整,未验证的第三方服务细节暂未提供。