Python 分发包中添加额外文件的方法

重要的人越来越少,剩下的越来越重要。拼你想要的,争你没有的。要想人前显贵,就得背后遭罪。最穷不过要饭,不死终会出头!

在制作一个 Python 分发包时经常需要把一些文件添加到包中。最常见的例子是你希望通过
pip install 命令安装 Python 包时会在
/etc/ 等目录下自动添加默认配置文件,由此可以让 Python 安装完成就可以工作,同时也可以给用户提供配置样例参考。

参考Installing Additional Files

如果使用 setuptools,在setup.py 文件中可以通过data_files 配置项配置分发包的额外文件, 格式为:(<安装位置>, [<文件1>, <文件2>, ...])

# setup.py
from setuptools import setup
setup(...,
  data_files=[('bitmaps', ['bm/b1.gif', 'bm/b2.gif']),
     ('config', ['cfg/data.cfg'])],
 )

上面的示例<安装位置> 使用了相对路径,在安装时会根据安装前缀如sys.prefix (系统级安装) 和site.USER_BASE (用户级安装)解释为绝对路径。虽然也可以使用绝对路径,但不推荐这么做,因为 这与 wheel 格式的分发包不兼容。文件路径同样也是相对路径,其路径起点为 setup.py 文件所在目录, 即项目的根目录,注意文件不能被重命名。

如果使用pbr 帮助打包,声明额外文件的方法与上述类似, 需要在setup.cfg 如下配合

[files]
packages =
 pbr
data_files =
 etc/pbr = etc/*
 etc/init =
  pbr.packaging.conf
  pbr.version.conf

总结

以上所述是小编给大家介绍的Python 分发包中添加额外文件的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

本文Python 分发包中添加额外文件的方法到此结束。狂妄的人有救,自卑的人没有救。小编再次感谢大家对我们的支持!

标签: 包中 Python