教你装逼了:怎么样发布你的 Python 代码给别人 “pip install”

我们经常在使用某些功能的时候,都会去安装一些第三方的模块,比如 “pip install requests”,感觉逼都被别人装了,你有没有想过,自己搞一个模块,给别人直接 pip install 到他的电脑里面直接使用呢?是不是突然就逼格满满了?

有些人说,“我现在还写不出牛逼的模块啊,这就有点尴尬了”。其实没有关系,咱们先装逼要紧。当然,如果你哪一天写了一个非常牛逼的模块,火了之后不要忘记小帅b就行。

那么如何将你的代码打包,然后发到 pypi 上让别人直接 pip install 呢?

接下来就是:

学习 Python 的正确姿势

要打一个 Python 包到 PYPI 上,是需要一定的目录结构的,首先我们可以创建一个目录,作为演示,小帅b在这里创建一个帅b包:

mkdir shuaib_package

接着我们就进入这个帅b包:

cd shuaib_package/

接着我们在这个目录下创建一个存放你代码的目录,这里就叫 xiaoshuaib 好了:

mkdir xiaoshuaib

我们进入这个目录:

cd xiaoshuaib/

创建你的代码,这里为了演示,我就创建一个 xiaoshuaib.py 好了 :

touch xiaoshuaib.py

在这个 py 里面就简单写一个输出的方法好了:

在这个 xiaoshuaib 目录下还必须要创建一个 __init__.py 来告诉别人你的模块是啥:

touch __init__.py

在这个 __init__.py 写下你的 name 和导入你的代码模块:

ok,此时此刻,你的文件目录是这样的:

只有这几个文件还是不够的,我们还要再创建几个必要的文件,分别是 setup.py、LICENSE、READEME.md, 至于创建这几个文件有什么鸟用,等会帅b给你细细地道来,废话不要那么多,先创建再说:

cd shuaib_package/

touch setup.py

touch LICENSE

touch README.md

那么到现在这个时候,你的文件目录应该是这样的:

接下啦帅b就跟你说说这几个文件分别有什么鸟用。

1、setup.py

这个文件主要是要告诉 setuptools ,我们的包里面的一些信息,比如名称啊,版本号啊,作者,邮箱等等...

我们来编辑一些这个文件:

这里面对应的意思应该不用我多说了吧,就是一些你的模块信息,像我这样填入你自己的就好了。

2、README.md

在这里就可以对你的模块进一步各种吹了,刚我们写的 setup 文件里面也引用到了这个文件,主要是怕你吹的太多,所以直接用 markdown 让你吹个够,我们打开这个 README 文件吹一波:

好吧,我这里作为演示就只吹这么一点点够了...

3、LICENSE

在开源的世界里, LICENSE 是必不可少的,我们可以在这里声明:你要免费用我的代码是吧?可以,但是你得署名一下啊,要让别人知道这是我搞出来的啊,老子不要钱,但不能说这是你自己搞出来的好吧?

LICENSE 有好几种不同的声明,以后有机会帅b再跟你说说,这次就用 MIT 的 LICENSE ,我们编辑一下我们刚刚创建的 LICENSE:

好了,现在我们所需的文件就弄好了,接下来就可以将我们的东西给生成可分发的文件,在此之前我们要安装并且更新好 setuptools 和 wheel 模块:

python3 -m pip install --user --upgrade setuptools wheel

安装完成之后,你就可以在你刚刚创建的目录执行以下命令生成啦:

python3 setup.py sdist bdist_wheel

这时候你就会发现,你的目录下会多了一个 dist 的目录,这正是 pypi 所需要的:

万事具备,就差 tm 的上传了啊,那么你现在就要有一个 pypi 的账号,你可以到以下链接注册一个账号:

https://pypi.org/account/register/

如果说你只想自己试着小打小闹一下,可以到这里注册一个测试版的:

https://test.pypi.org/account/register/

不管咋地,反正你迟早会注册好一个账号的对吧?值得注意的是,你要验证下你的邮箱,代表你不是机器人注册的账号:

那么此时此刻,你所需的文件也有了,账号也有了,这次就真的只差上传一个动作了,我们需要 twine 这个模块来进行上传操作,先安装一下:

python3 -m pip install --user --upgrade twine

安装好了之后,相信我,一点也不复杂,一个命令就能搞定上传,进入你的目录,然后执行以下命令把你刚刚生成的 dist 上传上去:

 twine upload dist/*

这样,我们就将我们的模块上传上去了!!

去官网搜一下 xiaoshuaib 先:

哈哈哈哈,有了,我们来安装一波吧:

pip install xiaoshuaib

安装成功,来使用一波:

哈哈哈,完美使用。

ok,以上就是从 0 到 发布一个 pypi 包的完整流程,希望对你有帮助,记得点“在看”。那么我们下回见,peace!

扫一扫

学习 Python 没烦恼

(0)

相关推荐

  • pip 搜索安装包、查看已经安装模块、

    pip 安装包 1,PyPI查找包 2,安装包 3,列出已安装的包 4,显示已安装软件包的信息 1,PyPI查找包 pip3 search ╰─➤ pip3 search seleniumseleni ...

  • pytest文档56-插件打包上传到 pypi 库

    前言 pytest 的插件完成之后,可以上传到 github,方便其他小伙伴通过 pip 源码安装.如果我们想通过 pip install packages 这种方式安装的话,需上传到 pypi 仓库 ...

  • 发布代码到 PyPI

    来源:Python 技术「ID: pythonall」 写 Python 程序的童鞋们都知道安装模块使用 pip install xxxx 命令,那么知道怎样将自己的代码发布到 PyPI 让全世界 P ...

  • 如何安装 Python 的第三方模块

    正所谓"人生苦短,我用 Python".Python 的一大优势就是有丰富且易用的第三方模块,省去了大量重复造轮子的时间,节约了众多开发者的生命.对于已经熟悉 Python 开发的 ...

  • 学习笔记:发布自己的python模块安装包

    文章目录 0. 前言 1. 准备工作 (1) 注册 pypi.org 用户 (2) 使用 pip 安装或升级几个必备工具 2. 规划文件目录 (1) __init__.py (2) README.md ...

  • 我不是教你装逼

    上班花时间买钱,下班花钱买时间就是小白杨现阶段生活的真实写照.小白杨的时薪是每小时十几块,然后上下班的路上,为了节省半个小时的车程,开收费高速便轻轻松松花掉十几块. 每周总有那么几天不想回家做晚饭,小 ...

  • 装逼技能:把你的Python程序打包成exe可执行文件

    还记得大明湖畔的夏雨荷么? 夏雨荷??? 哦,不对,还记得上次咱们公号爬取美女的项目么? 记得,简直刺激~对了,我想给我朋友玩玩,可是他没有安装Python,有什么办法么? 有!可以打包成一个 exe ...

  • 明天,我们准备教你一些适合装逼的传媒黑话。

    自媒体 智媒体 云媒体 新媒体 社会化媒体 ? 建构什么建构 打法什么打法 心智怎么心智 矩阵怎么矩阵 如何降维打击 啥叫下沉市场 哪来平台资本 如何平台背书 搞个生态闭环 ? 5G 云计算 人工智能 ...

  • 完全装逼指南——我来教你怎么去装逼

    一.装B之读书 世界上总是有那么群爱装B的人,所以才有这篇不完全装B手册,为什么不完全呢?因为装的艺术是要表现在你生活的方方面面的,而我在此仅探讨几个关于读书的装B问题. 唐代非著名诗人章碣曾很感慨地 ...

  • 装逼神技:逼格不够黑白来凑,教你拍出极具视觉冲击力的黑白建筑!【蚂蚁原创】

    建筑,大家应该都有拍过,一般都会用绚丽的色彩来表现,比如夜景等,但事看的多了,反而有些普通了,所以今天蚂蚁教大家一招拍建筑的技法,比彩色更具视觉冲击力,就是拍黑白建筑: 接着蚂蚁从 拍摄器材.前期取景 ...

  • 是时候装逼了,试试 IDEA 解决 Maven 依赖冲突的高能神器!

    戳一戳→ 写代码的渣渣鹏 昨天 阅读本文大概需要 2.8 分钟. 来自:sf.com/a/1190000017542396 今天,来讲一个 Maven 经典实战问题,依赖冲突. 1.何为依赖冲突 Ma ...

  • 可以用来装逼的22则冷知识

    学无止境,即使你再渊博,也有许多冷知识是你不知道的!不信请看. 一茶勺的蜂蜜是12只蜜蜂终生劳动的成果. 人类登月的时间(1969)于人类发明拉杆箱(1970)的时间. 弹窗广告的发明者曾为自己的这项 ...

  • 本田“潮跑”来袭,原厂就能装逼 | 周末福利

    新增了两个车型后,飞度从精品小车,变成了"精品小车Type R". GK5是一个大玩具,更是一种信仰. 凭借同级最强的动力和巨大的改装潜力,再加上超高的实用性,让飞度除了成为本田的 ...

  • 那些''装逼''去西藏的人,后来怎么样了?

    热爱旅行的人 都听过这么一句话 西藏是一种病 不去治不好 当娇嫩的花朵压弯了枝头 △ 西藏 · 林芝 当层次分明的绿意无限蔓延 △ 西藏 · 鲁朗林海 当湖光粼粼的湖面泛起涟漪 △ 西藏 · 巴松措 ...