上传Python项目到PyPI

AI-摘要
Tianli GPT
AI初始化中...
介绍自己 🙈
生成本文简介 👋
推荐相关文章 📖
前往主页 🏠
前往爱发电购买
上传Python项目到PyPI
RandomEnch前言
本教程介绍如何将 Python 项目上传到 PyPI,使用 twine 进行上传,并涵盖以下三种情况:
一般方式(基于 setup.py)
使用 Poetry
不使用 setup.py(基于 pyproject.toml)
你也可以直接查看官方文档
先决条件
在开始之前,你需要:
1. 创建 API Token
1.1 注册 PyPI 账号
访问 PyPI 官网 并注册一个账号。
1.2 创建 API Token
- 登录 PyPI 后,点击右上角的用户名。
- 选择 Account settings。
- 在 API tokens 部分,点击 Add API token(或者直接跳转)。
- 选择 Scope(可以选择适用于所有项目或仅适用于某个项目),不想麻烦直接选择 All projects即可。
- 生成 Token 并妥善保存。
1.3 配置 Token
Windows
在用户主目录 (C:\Users\YourUsername\
) 下创建 .pypirc
文件(如果不存在)添加以下内容:
1 | [distutils] |
Linux/macOS
1 | sudo vim ~/.pypirc |
在 ~/.pypirc
文件中添加以下内容:
1 | [distutils] |
2. 上传项目
1. 一般方式(基于 setup.py
)
1.1 安装必要工具
1 | pip install setuptools wheel twine |
1.2 创建 setup.py
在项目根目录创建 setup.py
文件:
1 | from setuptools import setup, find_packages |
1.3 生成分发包
1 | python setup.py sdist bdist_wheel |
生成的 .tar.gz
和 .whl
文件会存放在 dist/
目录下。
1.4 上传到 PyPI
1 | twine upload dist/* |
2. 使用 Poetry
2.1 安装 Poetry
1 | pip install poetry |
2.2 初始化项目
1 | poetry init |
按照提示填写项目信息。
2.3 配置 PyPI 认证
1 | poetry config pypi-token.pypi your_pypi_api_token |
2.4 构建并上传
1 | poetry build |
3. 不使用 setup.py
(基于 pyproject.toml
)
3.1 安装 build
1 | pip install build |
3.2 创建 pyproject.toml
1 | [build-system] |
3.3 生成分发包
1 | python -m build |
3.4 上传到 PyPI
如果想先测试上传,可以使用 TestPyPI
:
1 | twine upload --repository testpypi dist/* |
然后在 https://test.pypi.org/ 上查看效果。
确认无误后,再上传到正式 PyPI:
1 | twine upload dist/* |
5. 总结
- 一般方式 使用
setup.py
和twine
进行构建和上传。 - Poetry 提供更现代的依赖管理和自动上传方式。
- 基于
pyproject.toml
可替代setup.py
,配合build
和twine
上传。
选择适合自己的方式,即可轻松发布 Python 包到 PyPI!
评论
匿名评论隐私政策
✅ 你无需删除空行,直接评论以获取最佳展示效果