首页 > 编程语言 >如何把一个 Python 项目发布到 PyPI 上指南教程 All In One

如何把一个 Python 项目发布到 PyPI 上指南教程 All In One

时间:2023-03-30 17:11:06浏览次数:41  
标签:教程 Python PyPI packaging https xgqfrms pip org

如何把一个 Python 项目发布到 PyPI 上指南教程 All In One

如何发布一个 Python 项目到 PyPI 上
如何发布一个 Python 包到 PyPI 上

image

https://pypi.org/user/xgqfrms/

官方文档

Packaging Python Projects

打包 Python 项目

https://packaging.python.org/en/latest/tutorials/packaging-projects/

https://packaging.python.org/distributing/

1. 安装工具

pip, 类似 Node.js 生态的 npm 功能

# 更新 pip
$ python3 -m pip install --upgrade pip

https://packaging.python.org/en/latest/key_projects/#pip

pip is the package installer for Python.
You can use it to install packages from the Python Package Index and other indexes.

https://pip.pypa.io/en/stable/

https://pip.pypa.io/en/stable/getting-started/

https://pip.pypa.io/en/stable/installation/

2. 开发项目

项目代码结构树

# tree
$ tree packaging_tutorial

packaging_tutorial/
├── LICENSE
├── pyproject.toml
├── README.md
├── src/
│   └── example_package_YOUR_USERNAME_HERE/
│       ├── __init__.py
│       └── example.py
└── tests/

TODO:

https://github.com/xgqfrms/first_python_package_project

3. 构建项目

Generating distribution archives
生成分发档案

$ python3 -m pip install --upgrade build

$ python3 -m build

4. 发布项目

Uploading the distribution archives
上传分发档案

$ python3 -m pip install --upgrade twine

$ python3 -m twine upload --repository testpypi dist/*

PyPI API token

https://test.pypi.org/help/#apitoken

5. 安装项目

$ python3 -m pip install --index-url https://test.pypi.org/simple/ --no-deps example-package-YOUR-USERNAME-HERE

6. 测试项目

# import the package in the REPL
$ python3
> from example_package_YOUR_USERNAME_HERE import example
> example.add_one(2)
3

issues

https://github.com/pypa/packaging-problems

https://github.com/pypa/packaging-problems/issues/new?template=packaging_tutorial.yml&title=Trouble+with+the+packaging+tutorial&guide=https://packaging.python.org/tutorials/packaging-projects

(

标签:教程,Python,PyPI,packaging,https,xgqfrms,pip,org
From: https://www.cnblogs.com/xgqfrms/p/17271108.html

相关文章

  • python中类成员修饰符
    在java,c#类的成员修饰符包括,公有、私有、程序集可用的、受保护的。对于python来说,只有两个成员修饰符:公有成员,私有成员成员修饰符是来修饰谁呢?当然是修饰成员了。那么pyt......
  • [Python]async异步爬虫
    importasyncioimportaiohttpasyncdefdownload_img(session,url):file_name=url.rsplit('/')[-1]print(f"下载图片:{file_name}")awaitasyncio.......
  • 【Python】函数的可变参数 *args 和 **kwargs的使用
    可变参数*args和**kwargs*args和**kwargs主要用于定义函数的可变参数,*args和**kwargs组合起来可以传入任意的参数。(注意:参数*args必须在**kwargs之前定义)*arg......
  • python——list求交集、并集、差集
    https://blog.csdn.net/qq_41985134/article/details/122956104   ......
  • python学习(二)
    1Python中的标识符和保留字有的单词赋予了特定的意义,在给对象起名字时不能使用例如代码:importkeywordprint(keyword.kwlist)结果:['False','None','True','and......
  • python+playwright 学习-42 离线安装 playwright 环境
    前言有些同学可能是在公司局域网办公,无法连到外网去在线下载,本篇教大家在本地局域网部署好playwright环境playwright本地下载先找个有网络的电脑,下载playwright,不要......
  • 连接 AI,NebulaGraph Python ORM 项目 Carina 简化 Web 开发
    作者:Steam&Hao本文整理自社区第7期会议中13‘21″到44’11″的PythonORM的分享,视频见https://www.bilibili.com/video/BV1s8411N7Cw在做业务开发时,Nebula......
  • python_Package相关
    将自己的工作,构建为python的Package并上传至PYPI,使得其他开发者可以通过pip安装并使用。这是我一直想做的事情,最近我成功将微博数据采集项目封装并上传至PYPI。为使得后续......
  • Python自然语言处理基础实验2_基于HMM的中文分词
    实验目的了解并掌握基于隐马尔可夫模型(HMM)的分词方法,重点掌握Viterbi算法。实验要求1、对给定的语料库(或自行准备)进行统计分析,确定HMM模型的三个参数;2、根据上一步求得的......
  • 基于stm32mp157 linux开发板ARM裸机开发教程3:Cortex-A7 架构与工作模式(连载中)
    前言:目前针对ARMCortex-A7裸机开发文档及视频进行了二次升级持续更新中,使其内容更加丰富,讲解更加细致,全文所使用的开发平台均为华清远见FS-MP1A开发板(STM32MP157开发板)针对......