2020-02-10

distutils

一、setuptools

1、安装

Python 2.x: sudo apt-get install python-setuptools
Python 3.x: sudo apt-get install python3-setuptools
pip install --upgrade setuptools

2、MANIFEST.in

文件打包配置模板文件,配置格式:

include part1 part2  #包含匹配到的文件
exclude part1 part2   #排除匹配到的文件
recursive-include dir part1 part2  #i包含指定目录及递归子目录下匹配到的文件
recursive-exclude dir part1 part2  #排除指定目录及递归子目录下匹配到的文件
global-include part1 part2  #i包含源码树中所有匹配到的文件
global-exclude part1 part2  #i排除源码树中所有匹配到的文件
prune dir   #排除指定目录下所有文件,包括子目录
graft dir   #包含指定目录下所有文件,包括子目录

其中:

  • 涉及的路径为目录名,而不是包名
  • 多条配置顺序不同,结果不同,比如:
    test1.rst没有被包含
include test1.rst
global-exclude *.rst

test1.rst被包含

global-exclude *.rst
include test1.rst

另外打源码包时,data files也会根据package_name.egg-info/SOURCES.txt文件拉取,所以MANIFEST.in修改后,打包之前,要删除该文件
package_data: 字典,包和文件匹配模板列表映射,这里是包而非目录
exclude_package_data:字典,包和文件匹配模板列表映射,这里是包而非目录

3、setup.cfg

4、pbr

二、python包格式

1、源码发布包

python setup.py sdist --formats=formats #支持打包成多种格式,formats:zip,gztar
支持的压缩格式如下,默认gztar

  --formats=bztar  bzip2'ed tar-file
  --formats=gztar  gzip'ed tar-file
  --formats=tar    uncompressed tar file
  --formats=zip    ZIP file
  --formats=ztar   compressed tar file

2、预构建发布包

python setup.py bdist --formats=formats
python setup.py sdist --formats=formats #支持打包成多种格式,formats:egg,gztar
支持的压缩格式如下,默认gztar

  --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
  --formats=msi      Microsoft Installer
  --formats=egg      Python .egg file

此外还提供简化的命令

  bdist             create a built (binary) distribution
  bdist_dumb        create a "dumb" built distribution
  bdist_rpm         create an RPM distribution
  bdist_wininst     create an executable installer for MS Windows
  bdist_egg         create an "egg" distribution
  bdist_wheel       create a wheel distribution

二、pip

1、安装

  • 源码安装
    源码包地址:
    https://pypi.python.org/pypi/pip
    解压进入源码目录,执行命令:
    python setup.py install
  • 包管理器安装
    yum install -y python-pip
  • 安装脚本
    curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py # 下载安装脚本
    python2:python get-pip.py # 运行安装脚本
    python3: python3 get-pip.py

2、pip源

3、requirement.txt

你可能感兴趣的:(2020-02-10)