python 应用打包与发布

简介:

平常我们用包管理工具(如:pip,easy_install)去下载模型和包,然后把他们import进自己的项目来构建一个新项目。这些包管理工具链接源PyPI(Python Package Index)然后提供搜索和安装功能。想要发布一个应用需要项目文件夹中必须含有特定的一些文件,接下来会举例说明。

提醒: 推荐开发项目时使用python虚拟环境(venv)来隔离Python模块下载。


Python包

Python中一个包是一个含有__init__.py文件,包含源文件(模块)的可被引入的文件夹。文件名不能与系统包名称一样。

Python包

Python应用

现实项目中,多个Python包,代码文件和引入的三方包构成了一个Python应用


Python应用

为了提供跟好的生态和Python产品发行,distutils 诞生了。本文使用的是功能更为强大的setuptools

如果未安装请参考: windows 下安装 setuptools

开始

首先请准备好你的项目代码。这里需要准备几个文件: requirements.txt(项目依赖三方包)、setup.py(项目打包)README.md(项目简介与简单实用文档) 

Tip:  平时开发的时候,本地调试之后经常会产生venv、log、idea等代码运行过程中产生文件。这些文件与项目代码本身没有关系,有的占用空间还很大,上传代码的时候一不小心上传上去不容易察觉而且删除起来很麻烦,为了一次性杜绝这个问题加上.gitignore文件就可以杜绝。


下面来重点说一下setup.py

setup文件编写如下,只是个简单的demo版本号暂时写死了。没有用到numpy或者pandas的话可以把try那段删掉。本段多是描述型的配置,按实际填写就好。

命令行输入: python3 setup.py check

除了返回 running check 没有其他打印即可

输入:python3 setup.py install 来把你的项目安装到本地环境中,即打包放入site-package目录

Pycharm工具查看包已经安装好,来import一把。


成功~~

上图细心的朋友可以看到一个egg文件,这个就是我们打得包。

打包命令:python3 setup.py bdist_egg

Python发布

未完,待续... ...

推荐阅读更多精彩内容