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数组定义方法
Apr 13 Python
Python中动态检测编码chardet的使用教程
Jul 06 Python
python微信跳一跳游戏辅助代码解析
Jan 29 Python
python调用API实现智能回复机器人
Apr 10 Python
Python3之读取连接过的网络并定位的方法
Apr 22 Python
对pycharm 修改程序运行所需内存详解
Dec 03 Python
用python代码将tiff图片存储到jpg的方法
Dec 04 Python
python调用外部程序的实操步骤
Mar 04 Python
Python3爬虫关于识别检验滑动验证码的实例
Jul 30 Python
利用python清除移动硬盘中的临时文件
Oct 28 Python
通过Python pyecharts输出保存图片代码实例
Nov 25 Python
让文件路径提取变得更简单的Python Path库
May 27 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将DateTime对象转化为友好时间显示的实现代码
2011/09/20 PHP
PHP压缩html网页代码(清除空格,换行符,制表符,注释标记)
2012/04/02 PHP
PHP创建桌面快捷方式的实例代码
2014/02/17 PHP
php使用iconv中文截断问题的解决方法
2015/02/11 PHP
PHP重置数组为连续数字索引的几种方式总结
2018/03/12 PHP
通过PHP的Wrapper无缝迁移原有项目到新服务的实现方法
2020/04/02 PHP
Laravel框架源码解析之反射的使用详解
2020/05/14 PHP
[Web]防止用户复制页面内容和另存页面的方法
2009/02/06 Javascript
得到jQuery detach()后节点中的某个值实现代码
2013/02/05 Javascript
JavaScript实现表格排序方法
2013/06/14 Javascript
JS预览图像将本地图片显示到浏览器上
2013/08/25 Javascript
js 阻止子元素响应父元素的onmouseout事件具体实现
2013/12/23 Javascript
Node.js中的模块机制学习笔记
2014/11/04 Javascript
js利用正则表达式检验输入内容是否为网址
2016/07/05 Javascript
基于vue2.0+vuex+localStorage开发的本地记事本示例
2017/02/28 Javascript
Node学习记录之cluster模块
2017/05/31 Javascript
Vue中父子组件通讯之todolist组件功能开发
2018/05/21 Javascript
ES6 对象的新功能与解构赋值介绍
2019/02/05 Javascript
微信小程序时间戳转日期的详解
2019/04/30 Javascript
原生js实现表格翻页和跳转
2020/09/29 Javascript
基于python的汉字转GBK码实现代码
2012/02/19 Python
总结Python中逻辑运算符的使用
2015/05/13 Python
通过mod_python配置运行在Apache上的Django框架
2015/07/22 Python
Python实现注册登录系统
2017/08/08 Python
EM算法的python实现的方法步骤
2018/01/02 Python
python3.6使用pymysql连接Mysql数据库
2018/05/25 Python
tensorflow 获取模型所有参数总和数量的方法
2018/06/14 Python
python MNIST手写识别数据调用API的方法
2018/08/08 Python
在Keras中CNN联合LSTM进行分类实例
2020/06/29 Python
详解canvas绘制网络字体几种方法
2019/08/27 HTML / CSS
亿企通软件测试面试题
2012/04/10 面试题
实习护士自我鉴定
2013/10/13 职场文书
县长群众路线对照检查材料思想汇报
2014/10/02 职场文书
党小组意见范文
2015/06/08 职场文书
利用python进行数据加载
2021/06/20 Python
一篇文章看懂MySQL主从复制与读写分离
2021/11/07 MySQL