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之关于类的初步认识
Oct 11 Python
浅析Python的Django框架中的Memcached
Jul 23 Python
Python字符串切片操作知识详解
Mar 28 Python
Python 实现微信防撤回功能
Apr 29 Python
Python Web程序搭建简单的Web服务器
Jul 31 Python
浅析Python语言自带的数据结构有哪些
Aug 27 Python
python 进程的几种创建方式详解
Aug 29 Python
python 用户交互输入input的4种用法详解
Sep 24 Python
使用python代码进行身份证号校验的实现示例
Nov 21 Python
Pytorch之finetune使用详解
Jan 18 Python
PIL包中Image模块的convert()函数的具体使用
Feb 26 Python
Python如何截图保存的三种方法(小结)
Sep 01 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 上传文件大小限制
2009/07/05 PHP
thinkphp中空模板与空模块的用法实例
2014/11/26 PHP
跨浏览器PHP下载文件名中的中文乱码问题解决方法
2015/03/05 PHP
jQuery一步一步实现跨浏览器的可编辑表格,支持IE、Firefox、Safari、Chrome、Opera
2009/08/28 Javascript
ToolTips JQEURY插件之简洁小提示框效果
2011/11/19 Javascript
jCallout 轻松实现气泡提示功能
2013/09/22 Javascript
js 数组操作之pop,push,unshift,splice,shift
2014/01/29 Javascript
基于jQuery Bar Indicator 插件实现进度条展示效果
2015/09/30 Javascript
全面详细的jQuery常见开发技巧手册
2016/02/21 Javascript
基于javascript实现九九乘法表
2016/03/27 Javascript
javascript中setAttribute兼容性用法分析
2016/12/12 Javascript
canvas雪花效果核心代码分享
2017/02/19 Javascript
JavaScript控制输入框中只能输入中文、数字和英文的方法【基于正则实现】
2017/03/03 Javascript
原生JS实现左右箭头选择日期实例代码
2017/03/14 Javascript
AngularJS  ng-repeat遍历输出的用法
2017/06/19 Javascript
Angularjs在360兼容模式下取数据缓存问题的解决办法
2017/06/22 Javascript
jQuery选取所有复选框被选中的值并用Ajax异步提交数据的实例
2017/08/04 jQuery
nodejs使用http模块发送get与post请求的方法示例
2018/01/08 NodeJs
Spring Boot/VUE中路由传递参数的实现代码
2018/03/02 Javascript
vue页面离开后执行函数的实例
2018/03/13 Javascript
解决 viewer.js 动态更新图片导致无法预览的问题
2019/05/14 Javascript
vue 使用lodash实现对象数组深拷贝操作
2020/09/10 Javascript
python爬虫入门教程--HTML文本的解析库BeautifulSoup(四)
2017/05/25 Python
Python抓取聚划算商品分析页面获取商品信息并以XML格式保存到本地
2018/02/23 Python
python MySQLdb使用教程详解
2018/03/20 Python
python多进程控制学习小结
2018/10/31 Python
IronPython连接MySQL的方法步骤
2019/12/27 Python
python中数字是否为可变类型
2020/07/08 Python
个人党性剖析材料
2014/02/03 职场文书
我的长生果教学反思
2014/04/28 职场文书
通信工程求职信
2014/07/16 职场文书
2015年清明节扫墓演讲稿
2015/03/18 职场文书
音乐课外活动总结
2015/05/09 职场文书
签证扫盲贴,41个常见签证知识,需要的拿走
2019/08/09 职场文书
Redis如何一键部署脚本
2021/04/12 Redis
在Docker容器中部署SQL Server
2022/04/11 Servers