保姆级教程带你开发优质的Python库之下篇【种子项目】

简介: 正式的Python专栏第11篇,同学站住,别错过这个从0开始的文章!

保姆级教程带你开发优质的Python库之上篇

保姆级教程带你开发优质的Python库之中篇

前面两篇的开发基本把项目准备好了,这篇学委讲讲这个项目开源项目的发布, 正式的发布优秀的项目,分享给全世界python开发者使用

pip install pypi-seed
ppc 

上面的命令,可以让我们快速试用这个种子项目。这个库pypi-seed的主页介绍如下,我们下面细讲。

image.png

pypi 仓库 - 它就像App商店

说到发布,学委这里需要提到pypi网站了,如下图所示,摘自学委的另一篇热门文章

image.png

很多python高手开发了很多项目,凝炼了一些优质的可复用的代码,但是他们不会选择打包发送一个压缩文件分享。


优秀的开发者会把项目组织好,发布到pypi仓库,然后其他开发者通过一个统一的工具:pip。


简单来说,pypi仓库用来存放成千上万的优质的python代码库,然后pip类似手机的应用宝/App下载安装工具,帮我们轻松快速的获取别人的代码。


自己怎么上传代码到pypi的呢?

项目代码可以点击这里Github获取,前面两篇优质python 库开发讲解过了,主要是项目必须配置一个setup.py 。


之前在保姆级教程带你开发优质的Python库之中篇中详细谈了 setup.py,下面直接构建上传项目。


第一步,先把项目打包为特定的格式,比如,调用下面的代码生成通用的whl文件。

复制运行下面的命令,能够生成一个通用的whl包。


python setup.py bdist_wheel --universal

这是部分运行截图:

image.png

运行结束后,当前项目会多一个dist目录(包含生成的whl文件,比如 pypi_seed-1.0.7-py2.py3-none-any.whl)。

还有其他中间数据目录,读者可以自己打开看看。

第二步,再上传项目的whl文件到pypi仓库

运行下面的命令:

#如果没有安装twine
pip install twine
#使用twine上传dist目录生成的whl文件到pypi
twine upload dist/pypi_seed-1.0.7-py2.py3-none-any.whl

运行效果如下图:image.png运行过程需要输入pypi网站的用户名和密码。


如果没有,需要在pypi.org 注册账户才能发布自己的库。


发布成功就可以在pypi仓库查到(打开上图的twine在上传包成功后会显示库的链接)。下面打开看看。


第三步 查看发布的库

比如下面的,从pypi截图的。也可以搜索库名字,看看。


image.png

比如下面是这个库的一些版本发布历史:

image.png

如何获取别人分享的库

比如这个pypi-seed ,这个用来生成库项目的工具。 可以通过以下命令安装。

pip install pypi-seed

使用python种子项目

通常我们会通过库的主页查看使用说明,pypi-seed的项目地址为:https://pypi.org/project/pypi-seed/

不用打开,学委直接整理了使用的命令:

ppc --project demo_project --author testuser --dir=/tmp

或者

pypiseed --project demo_project --author testuser --dir=/tmp

两个命令任选一个复制运行,即可快速创建一个python模版项目了!

效果如下:

image.png

整个过程挺简单的,主要为制作whl包,发布到pypi。

接下来可以继续使用ppc(pypiseed)创建标准的python项目,继续开发了。

目录
相关文章
|
3天前
|
Python
SciPy 教程 之 Scipy 显著性检验 3
本教程介绍Scipy显著性检验,包括其基本概念、原理及应用。显著性检验用于判断样本与总体假设间的差异是否显著,是统计学中的重要工具。Scipy通过`scipy.stats`模块提供了相关功能,支持双边检验等方法。
10 1
|
5天前
|
机器学习/深度学习 Python
SciPy 教程 之 SciPy 插值 2
SciPy插值教程:介绍插值概念及其在数值分析中的应用,特别是在处理数据缺失时的插补和平滑数据集。SciPy的`scipy.interpolate`模块提供了强大的插值功能,如一维插值和样条插值。通过`UnivariateSpline()`函数,可以轻松实现单变量插值,示例代码展示了如何对非线性点进行插值计算。
10 3
|
8天前
|
机器学习/深度学习 数据处理 Python
SciPy 教程 之 SciPy 空间数据 4
本教程介绍了SciPy的空间数据处理功能,主要通过scipy.spatial模块实现。内容涵盖空间数据的基本概念、距离矩阵的定义及其在生物信息学中的应用,以及如何计算欧几里得距离。示例代码展示了如何使用SciPy计算两点间的欧几里得距离。
22 5
|
7天前
|
机器学习/深度学习 Python
SciPy 教程 之 SciPy 空间数据 6
本教程介绍了SciPy处理空间数据的方法,包括使用scipy.spatial模块进行点位置判断、最近点计算等内容。还详细讲解了距离矩阵的概念及其应用,如在生物信息学中表示蛋白质结构等。最后,通过实例演示了如何计算两点间的余弦距离。
17 3
|
8天前
|
数据库 Python
异步编程不再难!Python asyncio库实战,让你的代码流畅如丝!
在编程中,随着应用复杂度的提升,对并发和异步处理的需求日益增长。Python的asyncio库通过async和await关键字,简化了异步编程,使其变得流畅高效。本文将通过实战示例,介绍异步编程的基本概念、如何使用asyncio编写异步代码以及处理多个异步任务的方法,帮助你掌握异步编程技巧,提高代码性能。
26 4
|
6天前
|
机器学习/深度学习 数据处理 Python
SciPy 教程 之 SciPy 空间数据 7
本教程介绍了SciPy的空间数据处理功能,涵盖如何使用`scipy.spatial`模块进行点的位置判断、最近点计算等操作。还详细解释了距离矩阵的概念及其在生物信息学中的应用,以及汉明距离的定义和计算方法。示例代码展示了如何计算两个点之间的汉明距离。
13 1
|
4天前
|
机器学习/深度学习 数据处理 Python
SciPy 教程 之 SciPy 插值 3
本教程介绍了SciPy中的插值方法,包括什么是插值及其在数据处理和机器学习中的应用。通过 `scipy.interpolate` 模块,特别是 `Rbf()` 函数,展示了如何实现径向基函数插值,以平滑数据集中的离散点。示例代码演示了如何使用 `Rbf()` 函数进行插值计算。
9 0
|
4天前
|
Python
SciPy 教程 之 Scipy 显著性检验 1
本教程介绍Scipy显著性检验,包括统计假设、零假设和备择假设等概念,以及如何使用scipy.stats模块进行显著性检验,以判断样本与总体假设间是否存在显著差异。
8 0
|
7天前
|
数据采集 数据可视化 数据挖掘
利用Python进行数据分析:Pandas库实战指南
利用Python进行数据分析:Pandas库实战指南
|
1月前
|
Python
pip批量安装Python库 requirement.txt 离线环境无互联网环境下pip安装Python库
pip批量安装Python库 requirement.txt 离线环境无互联网环境下pip安装Python库
106 3