Python - 如何使用其他已安装的包数据

时间:2018-04-29 07:23:18

标签: python pyqt setup.py

我有一个需要显示一些图像的PyQt应用程序。我看到了:

How can I include package_data without a MANIFEST.in file?

将图像文件包含在软件包安装中的方法。

它在/usr/local/lib/python2.7/dist-packages/mypacakge/images/现在包含所有文件的方面工作正常。不幸的是,该应用仍未显示图片。

我当前的代码将图像文件作为相对路径(即:images/foo.jpeg)来解决,我认为这是错误的。但我不知道解决这些问题的正确方法是什么(除非我想使用绝对的/usr/local/lib/python2.7/dist-packages/mypacakge/images/foo.jpeg,我相信我不会这样做。这似乎是一个常见的问题,但我无法找到有关如何做到这一点的任何资源/答案。

1 个答案:

答案 0 :(得分:2)

模块pkg_resources支持查找包中包含的文件:

import pkg_resources

path = pkg_resources.resource_filename('<package name>', 'images/foo.jpeg')