Python - как использовать дополнительные данные установленных пакетов - PullRequest
0 голосов
/ 29 апреля 2018

У меня есть приложение PyQt, которое должно показывать несколько изображений. Я видел в:

Как включить package_data без файла MANIFEST.in?

Способ включения файлов изображений в установку пакета.

Отлично работает в том аспекте, что /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 голосов
/ 29 апреля 2018

Модуль pkg_resources поддерживает поиск файла, содержащегося в пакете:

import pkg_resources

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