SuperAPI AI 工具集

python-packaging

编程与开发

查看项目

更新于 10-16 03:13

技能介绍

用途:帮助开发者把 Python 代码整理为可分发、可安装的包,并发布到 PyPI、TestPyPI 或私有仓库;也覆盖命令行工具入口点、版本管理与打包元数据配置。

主要能力:介绍源码布局(src/package_name/)与扁平布局、PEP 517/518、PEP 621、PEP 660 等打包标准,以及 setuptools、hatchling、flit、poetry 等构建后端;给出最小与完整 pyproject.toml 示例,含依赖、可选依赖、classifiers、urls、package-data、命名空间包、C 扩展、动态版本(setuptools-scm)等配置;讲解用 Click 或 argparse 构建 CLI 并在 [project.scripts] 注册;演示构建与校验命令:pip install build twine、python -m build、twine check dist/;发布流程:twine upload --repository testpypi dist/,验证后 twine upload dist/*,支持 API token 的 ~/.pypirc 配置,并附 GitHub Actions 自动发布示例与 cibuildwheel 多平台轮子构建;还涵盖可编辑安装 pip install -e ".[dev]"、隔离环境测试及发布前检查清单。

使用方式:在项目根目录按示例创建 pyproject.toml 与目录结构,安装 build、twine 后执行 python -m build 生成 dist/,先用 TestPyPI 验证,再发布正式包;开发期可用 pip install -e . 安装。

适用场景:编写可分发的 Python 库、带入口点的命令行工具、需要管理依赖与可选功能、拆分命名空间包或包含数据文件与 C 扩展的项目。

限制:资料为指南性内容,未提供该技能自身的收费、价格或平台信息;具体行为依赖所选构建后端与工具版本,示例配置需按实际项目调整。