首页 > 代码库 > 使用 Setup 将Python 代码 打包
使用 Setup 将Python 代码 打包
完成源码后将代码打成安装包:
1. 我的源代码结构如下:
pack
|---src
| - common ---http
---user
| - lib
| - factory.py
2. 实现setup.py
#!/usr/bin/env python3# -*- coding: utf-8 -*-from distutils.core import setupsetup( name=‘sdk‘, version=‘1.0‘, description=‘sdk for di input , output and param‘, author=‘sam‘, author_email=‘sam@qq.com‘, url=‘‘, license=‘No License‘, platforms=‘python 2.7‘, py_modules=[‘factory‘], package_dir={‘‘: ‘pack‘}, packages=[‘lib‘, ‘common.http‘])
执行
python setup.py sdist
setup.py 同级目录生成一个dist文件夹,里面是 sdk1.0.tar.gz
之后就可以解压
解压后安装:
python setup.py install
注:使用 setup.py没有卸载功能,如果需要卸载则要手动删除
也可使用: -- record 记录安装文件的目录
python setup.py install --record file.txt
卸载就可以使用脚本,实现自动安装和卸载
注 1:
setup.py参数说明
#python setup.py build # 编译
#python setup.py install #安装
#python setup.py sdist #生成压缩包(zip/tar.gz)
#python setup.py bdist_wininst #生成NT平台安装包(.exe)
#python setup.py bdist_rpm #生成rpm包
或者直接"bdist 包格式",格式描述如下:
#python setup.py bdist --help-formats
--formats=rpm RPM distribution
--formats=gztar gzip‘ed tar file
--formats=bztar bzip2‘ed tar file
--formats=ztar compressed tar file
--formats=tar tar file
--formats=wininst Windows executable installer
--formats=zip ZIP file
注2: setup参数:
- name 打包名称
- version 版本
- ....
- playforms 所支持的平台 ,例中只支持2.7
- package_dir 源码所在目录
- packages 源码目录下那些目录要被打包
- py_modules 需要打包的模块
- requires 定义依赖模块
- ...
具体参数可参见官网
使用 Setup 将Python 代码 打包