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 域名分析工具实现代码
Jul 15 Python
Python中非常实用的一些功能和函数分享
Feb 14 Python
讲解Python中fileno()方法的使用
May 24 Python
在Python程序中操作MySQL的基本方法
Jul 29 Python
python+selenium开发环境搭建图文教程
Aug 11 Python
Python tornado队列示例-一个并发web爬虫代码分享
Jan 09 Python
Python基于高斯消元法计算线性方程组示例
Jan 17 Python
numpy中实现ndarray数组返回符合特定条件的索引方法
Apr 17 Python
Python操作word常见方法示例【win32com与docx模块】
Jul 17 Python
django项目登录中使用图片验证码的实现方法
Aug 15 Python
Tensorflow Summary用法学习笔记
Jan 10 Python
Python基于tkinter canvas实现图片裁剪功能
Nov 05 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
Windows下的PHP5.0安装配制详解
2006/09/05 PHP
php5.3 不支持 session_register() 此函数已启用的解决方法
2013/11/12 PHP
PHP数据库操作之基于Mysqli的数据库操作类库
2014/04/19 PHP
PHP使用http_build_query()构造URL字符串的方法
2016/04/02 PHP
Laravel 5.5基于内置的Auth模块实现前后台登陆详解
2017/12/21 PHP
Yii框架通过请求组件处理get,post请求的方法分析
2019/09/03 PHP
javascript 函数式编程
2007/08/16 Javascript
JQUERY复选框CHECKBOX全选,取消全选
2008/08/30 Javascript
详解AngularJS中$http缓存以及处理多个$http请求的方法
2016/02/06 Javascript
Bootstrap每天必学之轮播(Carousel)插件
2016/04/25 Javascript
JQuery的Pager分页器实现代码
2016/05/03 Javascript
JavaScript必知必会(五) eval 的使用
2016/06/08 Javascript
ASP.NET jquery ajax传递参数的实例
2016/11/02 Javascript
前端分页功能的实现以及原理(jQuery)
2017/01/22 Javascript
AngularJS中的拦截器实例详解
2017/04/07 Javascript
JavaScript之underscore_动力节点Java学院整理
2017/07/03 Javascript
JS运动特效之完美运动框架实例分析
2018/01/24 Javascript
使用Python下的XSLT API进行web开发的简单教程
2015/04/15 Python
python中使用%与.format格式化文本方法解析
2017/12/27 Python
对python:循环定义多个变量的实例详解
2019/01/20 Python
对python中assert、isinstance的用法详解
2019/11/27 Python
python实现猜拳游戏
2020/03/04 Python
基于python连接oracle导并出数据文件
2020/04/28 Python
python raise的基本使用
2020/09/10 Python
印度低票价航空公司:GoAir
2017/10/11 全球购物
产品销售员岗位职责
2013/12/18 职场文书
后备干部考察材料
2014/02/12 职场文书
小学数学教学经验交流材料
2014/05/22 职场文书
水利水电建筑施工应届生求职信
2014/07/04 职场文书
中队活动总结
2014/08/27 职场文书
2014年班级工作总结范文
2014/12/23 职场文书
婚宴新娘致辞
2015/07/28 职场文书
《比的意义》教学反思
2016/02/18 职场文书
Vue中foreach数组与js中遍历数组的写法说明
2021/06/05 Vue.js
能用CSS实现的就不要麻烦JavaScript了
2021/10/05 HTML / CSS
动画电影《擅长捉弄人的高木同学》6月10日上映!
2022/03/20 日漫