总羡慕别人的代码用起来方便,而自己每次审核都要等好久……

发布于 更新于

技术文章

以前通过 pip 安装的时候总是很羡慕,别人的代码使用起来好方便啊,那时候觉得代码要提交到 pip 平台去管理肯定需要审核吧?后来了解到自己的代码要可以 pip 安装不需要审核。只需要遵循几个步骤就能轻松实现:准备代码包通过 setupto...

以前通过 pip 安装的时候总是很羡慕,别人的代码使用起来好方便啊,那时候觉得代码要提交到 pip 平台去管理肯定需要审核吧?后来了解到自己的代码要可以 pip 安装不需要审核。


只需要遵循几个步骤就能轻松实现:

  • 准备代码包

  • 通过 setuptools 打包

  • 通过 twine 上传 (需要 pypi 账号密码)


重点操作:

  1. setup.py 的编写

  2. python setup.py sdist 打包

  3. twine upload dist/* 上传



1
准备代码包
首先准备好代码目录,一般需要包含以下几部分:
  • 代码包

  • setup.py

  • README.md

  • LICENSE


整体的目录结构类似于这样:


setup.py 主要是打包时候需要运行的程序,可以在 官方文档 查看具体用法。


里面的内容是这样的:


long_description 表示上传的包的使用说明,上传完成以后会在 pypi 网站上显示出来。


一般来说,可以直接读取 READ.md 文件当中的内容作为 long_description:


with open('README.md', 'r') as fh:


long_description = fh.read()


packages 是你的代码包含的所有的包。这些包在 pip 安装以后可以直接导入。比如项目下面的包名叫 webdrivers, 通过 pip 安装好以后可以通过 import webdrivers 导入包。

import webdrivers
print(webdrivers.chrome)


LICENSE 的种类有很多,可以在 choosealicense 去选择自己想要的许可,一般 MIT, Apache, GNU GPLv3 这些用得多。这些许可都是有现成模板的,直接复制就可以。

其他可能还会用到的一些参数:

  • keywords, 帮助别人搜到你的包

  • package_data, 包依赖的数据文件

  • entry_points, 定义命令行



2
通过 setuptools 打包


准备好文件之后,就可以通过 setuptools 打包了。先进入项目目录下,能找到 setup.py 这个文件, 执行:

 python setup.py sdist

注意这里不要使用虚拟环境去执行,使用系统的 python 命令。执行成功时,可以看到会生成一个 dist 文件。



3
通过 twine 上传

打包好了以后就可以把 dist 当中的文件上传到 pypi 了。

步骤 1:先在 pypi 网站 注册账号。

步骤 2:通过 pip install twine,安装好 twine 包。twine 是把代码上传到 pypi 的工具。

步骤 3:进入项目目录,twine upload dist/* 上传 dist 文件。在 windows 下用反斜杠表示路径:twine upload dist\*

成功之后,可以在 pypi 搜索到你的包了:


通过 pip 安装:


今天的小技术,大家学会了吗?还有小问题的,可以评论区留言,咱们的雨泽大佬会为大家答疑的~



文末福利


获取免费测试面试指导相关视频资料

加微信173-5287-1687,记得备注:官网~

继续阅读