如何在Pypi上发表自己的Python库
背景
最近兴趣使然写了几个Python库,也发布到了Pypi上,虽然没什么人下载,但自己在其他机器上用着也会很方便。这里我向大家介绍一下如何在Pypi上发表自己的Python库。
准备
注册账号
很显然地要在Pypi上注册一个账号。
安装必要的库
setuptools
原则上安装了pip的环境都有setuptools,但并不影响你去尝试升级一下它。
pip install --upgrade setuptools
twine
这是一个简化将库发布到Pypi上流程的工具,具体的使用之后会讲到。
pip install --upgrade setuptools
克隆仓库(推荐)
大名鼎鼎的requests库的作者大神kennethreitz为大家准备了一个仓库作为一个setup.py的很好的模板,当然你也可以自己手写setup.py。
git clone https://github.com/kennethreitz/setup.py
编码
编辑setup.py
建议大家直接编辑之前的仓库里的setup.py, 只需要修改一些必要的配置就可以了。这是我最近编写的库condition_chain的配置。
...
# Package meta-data.
NAME = 'condition_chain'
DESCRIPTION = 'Process a series of conditional judgement with a chained call.'
URL = 'https://github.com/duyixian1234/condition_chain'
EMAIL = 'duyixian1234@outlook.com'
AUTHOR = 'Yixian Du'
# What packages are required for this module to be executed?
REQUIRED = [
# 'requests', 'maya', 'records',
]
...
编写核心代码
接下来我们就可以编写自己的代码了,要注意源代码文件夹(仓库里的my_package文件夹)的名字与setup.py里配置的包名(Name)要一致。
另外在重新上传之前我们要修改__version__.py里的版本号,以免覆盖了以前的上传(相信会有人是需要之前版本的库的)。
最终的代码结构
│ LICENSE
│ MANIFEST.in
│ README.rst
│ setup.py
│
└─condition_chain
core.py
__init__.py
__version__.py
打包上传
在setup.py的同级目录下运行以下命令。
python setup.py sdist bdist_wheel
然后运行
twine upload dist/*
注意要输入Pypi账号和密码。
大功告成
之后我们就可以在Pypi里搜索到自己的Python库了,当然也可以直接通过pip安装。
如何在Pypi上发表自己的Python库的更多相关文章
- 在Pypi上发布自己的Python包
使用Python编程的都知道,Python的包安装非常的方便,一般都是可以pip来安装搞定: sudo pip install <package name> pip的安装请移步:https ...
- 如何在linux上有2个python的情况下安装gensim
安装python的问题 https://blog.51cto.com/liqingbiao/2083869 安装gensim https://blog.csdn.net/zhujiyao/articl ...
- 教你如何在Ubuntu上安装最新的Python版本
参考链接:https://cloud.tencent.com/developer/news/343104
- linux上安装BeatifulSoup(第三方python库)
1. 什么是beatifulsoup? beatifulsoup官网http://www.crummy.com/software/BeautifulSoup/ BeatifulSoup是用Python ...
- Python 库打包分发、setup.py 编写、混合 C 扩展打包的简易指南(转载)
转载自:http://blog.konghy.cn/2018/04/29/setup-dot-py/ Python 有非常丰富的第三方库可以使用,很多开发者会向 pypi 上提交自己的 Python ...
- Python库资源大全
转载地址:https://zhuanlan.zhihu.com/p/27350980 本文是一个精心设计的Python框架.库.软件和资源列表,是一个Awesome XXX系列的资源整理,由BigQu ...
- Python库资源大全【收藏】
本文是一个精心设计的Python框架.库.软件和资源列表,是一个Awesome XXX系列的资源整理,由BigQuant整理加工而成,欢迎扩散.欢迎补充! 对机器学习.深度学习在量化投资中应用感兴趣的 ...
- 如何在Pypi发布上传你自己的Python库
Pypi上传包 准备 Windows环境 *以下教程只能在Windows上执行,MACOS系统不能使用 注册账号 你需要在Pypi上注册一个账号. 安装必要的库 setuptools 原则上安装了pi ...
- 将自己写的Python代码打包放到PyPI上
如果是开源的Python代码,为了能够让大家更方便的使用,放到PyPI上也许是个非常不错的主意(PyPI:Python Package Index).刚开始我以为要将代码打包放到PyPI上是一件非常复 ...
随机推荐
- 一款简单而不失强大的前端框架——【Vue.js的详细入门教程①】
↓— Vue.js框架魅力 —↓ 前言 Vue.js 是一个构建数据驱动的 web 界面的渐进式框架.Vue.js 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件.V ...
- Python里Pure paths、PurePosixPath、PureWindowsPath的区别
Python是跨平台的,可以在不同的操作系统上运行.但是不同系统上路径 的表示方式是不一样的. 例如windows上路径使用“\”分割子目录和父目录,linux上是使用“/”来分割.这就是PurePo ...
- php数组合并,反转,去重,添加元素等;
//参数默认值//function abc($a,$b,$c = 0){// echo $a,$b,$c;//}//abc(1,3);//结果等于130://echo "<br> ...
- 强大的桌面用 PDF 重排工具:K2pdfopt 简明教程
用 Kindle 阅读 PDF 一直以来都遭到小伙伴们的无限吐槽,在那 Kindle 还能越狱的时代,我们有 Koreader 之类优秀的 Kindle 第三方插件实现 PDF 文档的实时重排,但是随 ...
- windows7下MongoDB(V3.4)的使用及仓储设计
简单的介绍一下,我使用MongoDB的场景. 我们现在的物联网环境下,有部分数据,采样频率为2000条记录/分钟,这样下来一天24*60*2000=2880000约等于300万条数据,以后必然还会增加 ...
- 学习Matplotlib
介绍 Matplotlib是一个Python 2D绘图库,可以跨平台生成各种硬拷贝格式和交互式环境的出版品质量图.Matplotlib可用于Python脚本,Python和IPythonshell,j ...
- Redis 的安装与使用
环境:CentOS 6.6 Redis 版本:redis-3.0 (考虑到 Redis3.0 在集群和性能提升方面的特性,rc 版为正式版的候选版,而且很快就出正式版) 安装目录:/usr/local ...
- java基础知识及详细笔记
第一章:初识java 1.1.java的概述 ü 什么是计算机程序:计算机按照某种顺序而完成的一系列有序指令的集合. ü Java的作用:1:安装和运行本机上的桌面程序.2:通过浏览器访问面向in ...
- Two-phase clustering process for outliers detection 文章翻译
基于二阶段聚集模式的异常探测 M.F .Jiang, S.S. Tseng *, C.M. Su 国立交通大学计算机与信息科学系,中国台北市新竹路100150号 1999年11月17日; 2000年4 ...
- 关于Websockets问题:
Websockets是一种与服务器进行全双工,双向通信的信道,它不使用http协议,他有自己的协议即自定义协议,ws协议:它的安全协议为wss协议.这种协议专门为快速传输小数据而设计的.对服务其有一 ...