Python如何将模块打包并发布


Posted in Python onAugust 30, 2020

想要把自己开发的库分享给别人使用, 使用 pip install 命令来安装 , 需要学习如何制作一个python 安装包

一、注册pypi账号

https://pypi.org/account/register/

二、创建setup.py和pypirc文件

setup.py模板(该文件放在项目根目录下)

from os.path import abspath, dirname, join 
​ 
from setuptools import setup, find\_packages 
​ 
\# 获取requirements.txt里的依赖信息 
install\_reqs = \[req.strip() for req in open(abspath(join(dirname(\_\_file\_\_), 'requirements.txt')))\] 
​ 
with open("README.md", 'r', encoding="utf-8") as f: 
 long\_description = f.read() 
​ 
setup( 
 name='模块名', 
 version='0.0.1', 
 packages=find\_packages(), 
 url='网址', 
 license='协议', 
 author='作者姓名', 
 author\_email='作者邮箱', 
 description='描述信息', 
 long\_description=long\_description, 
 long\_description\_content\_type="text/markdown", 
 install\_requires=install\_reqs, 
)

pypirc模板 (该文件放在家目录内)

这个文件用来存储刚才注册pypi账号信息

[distutils] 
index-servers=pypi 
[pypi] 
repository = https://upload.pypi.org/legacy/ 
username = 刚才注册的用户名 
password = 刚才注册的密码

三、安装依赖

pip install --upgrade pip twine wheel setuptools

四、打包

python setup.py sdist bdist_wheel

打包之后 会在项目的dist目录内生成whl文件

五、将whl文件上传到pypi服务器

twine upload dist/*

以上就是Python如何将模块打包并发布的详细内容,更多关于python 模块打包发布的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Python和Perl绘制中国北京跑步地图的方法
Mar 03 Python
python list元素为tuple时的排序方法
Apr 18 Python
python smtplib模块实现发送邮件带附件sendmail
May 22 Python
GitHub 热门:Python 算法大全,Star 超过 2 万
Apr 29 Python
Python实现EXCEL表格的排序功能示例
Jun 25 Python
Mac安装python3的方法步骤
Aug 09 Python
Python完全识别验证码自动登录实例详解
Nov 24 Python
django列表筛选功能的实现代码
Mar 27 Python
django xadmin中form_layout添加字段显示方式
Mar 30 Python
使用Keras预训练好的模型进行目标类别预测详解
Jun 27 Python
Pycharm同步远程服务器调试的方法步骤
Nov 04 Python
python数字类型和占位符详情
Mar 13 Python
如何以Winsows Service方式运行JupyterLab
Aug 30 #Python
selenium切换标签页解决get超时问题的完整代码
Aug 30 #Python
五分钟带你搞懂python 迭代器与生成器
Aug 30 #Python
python开根号实例讲解
Aug 30 #Python
python一些性能分析的技巧
Aug 30 #Python
python脚本第一行如何写
Aug 30 #Python
golang/python实现归并排序实例代码
Aug 30 #Python
You might like
一篇不错的PHP基础学习笔记
2007/03/18 PHP
用PHP伪造referer突破网盘禁止外连的代码
2008/06/15 PHP
PHP curl 获取响应的状态码的方法
2014/01/13 PHP
PHP简单实现模拟登陆功能示例
2017/09/15 PHP
php删除二维数组中的重复值方法
2018/03/12 PHP
浅谈Laravel中的三种中间件的作用
2019/10/13 PHP
Aliyun Linux 编译安装 php7.3 tengine2.3.2 mysql8.0 redis5的过程详解
2020/10/20 PHP
获取网站跟路径的javascript代码(站点及虚拟目录)
2009/10/20 Javascript
JS代码实现根据时间变换页面背景效果
2016/06/16 Javascript
自己封装的一个原生JS拖动方法(推荐)
2016/11/22 Javascript
JavaScript中清空数组的方法总结
2016/12/02 Javascript
JS基于对象的特性实现去除数组中重复项功能详解
2017/11/17 Javascript
vue-cli2.9.3 详细教程
2018/04/23 Javascript
JS 中可以提升幸福度的小技巧(可以识别更多另类写法)
2018/07/28 Javascript
JS实现图片拖拽交换效果
2018/11/30 Javascript
微信小程序五子棋游戏的悔棋实现方法【附demo源码下载】
2019/02/20 Javascript
简谈创建React Component的几种方式
2019/06/15 Javascript
JavaScript判断浏览器运行环境的详细方法
2019/06/30 Javascript
js如何验证密码强度
2020/03/18 Javascript
Vue Render函数创建DOM节点代码实例
2020/07/08 Javascript
Python提取网页中超链接的方法
2016/09/18 Python
Python面向对象实现一个对象调用另一个对象操作示例
2019/04/08 Python
Win10下Python3.7.3安装教程图解
2019/07/08 Python
对Django中内置的User模型实例详解
2019/08/16 Python
ipad上运行python的方法步骤
2019/10/12 Python
Python协程 yield与协程greenlet简单用法示例
2019/11/22 Python
jupyter notebook参数化运行python方式
2020/04/10 Python
Python类中的装饰器在当前类中的声明与调用详解
2020/04/15 Python
TCP协议通讯的过程和步骤是什么
2015/10/18 面试题
党员党性分析材料
2014/02/17 职场文书
自强之星事迹材料
2014/05/12 职场文书
法院授权委托书范文
2014/08/02 职场文书
优秀乡村医生先进事迹材料
2014/08/23 职场文书
办公室务虚会发言材料
2014/10/20 职场文书
股份转让协议书范本
2015/01/27 职场文书
开会通知
2015/04/20 职场文书