当你开发完自己的python程序并通过测试后,下一步就是要打包部署你的程序。
- 如果你开发的是公共组件,供他人使用,则需要打包代码,并发布到内部共享库或者公开的PyPI
- 如果你开发的是独立组件,则打包代码,通过持续集成进行发布到线上部署
打包文件格式通常是zip包或者tar包。
之前介绍过的setuptools提供了较完善的打包和发布到公开源PyPI的过程,打包步骤如下:
- 自己程序模块,如add.py
- setup.py 设置安装相关信息
- 打包
- 发布到PyPI
- 下载安装
- 模块使用
我们以一个例子来说明上述的步骤
自己程序模块
一个简单的工具计算类add.pydef add(a, b): return a + b
setup.py文件
编写setup文件,一般只要包括版本和模块,以及作者信息即可。也可以通过paster模块自动生成setup文件。
下面是一个简单的setup文件from distutils.core import setup setup(name='add', version='1.0', py_modules=['add'], )
paster模块通过
pip install pastescript
安装,paster提供了不同的模板可以快速创建setup文件,也可以通过制定的配置文件生成,通常建议使用配置来创建。常用配置如下:
[pastescript] description = aiweker-prj license_name = aiweker keywords = Python long_description = aiweker-prj author = aiweker author_email = xxx@aiweker.com url = http://aiweker.com version = 1.0.0
paster通过create创建setup文件,模板为basic_package
paster create -t basic_package --config="aiweker-prj-setup.cfg" add
打包
注意上面提及的add.py模块和setup.py文件是在同一个级目录。打包执行下面命令即可打包python setup.py sdist --formats=zip,gztar
打包后在dist目录下会有两个包一个是zip包,另一个是tar.gz包
./dist |- add-1.0.tar.gz |- add-1.0.zip
上传到PyPI
要上传到PyPI,需要在PyPI注册一个账号- 通过
python setup.py register
注册; - 注册完之后,通过
python setup.py register -n
登录 - 通过upload 进行上传
python setup.py sdist upload
- 通过
安装模块和使用
直接使用以下命令安装模块python setup.py install
import add print(add.add(10, 4)) # 14
以上就是简单的打包发布过程,希望对你有帮助!