Hi!请登陆

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

2020-11-17 36 11/17

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

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

准备代码包

通过 setuptools 打包

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

重点操作:

setup.py 的编写

python setup.py sdist 打包

twine upload dist/* 上传

准备代码包

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

代码包

setup.py

README.md

LICENSE

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

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

里面的内容是这样的:

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

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

withopen('README.md','r')asfh:

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, 定义命令行

通过 setuptools 打包

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

python setup.py sdist

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

通过 twine 上传

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

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

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

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

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

通过 pip 安装:

相关推荐