Как скомпилировать модуль.py в исполняемый файл .exe с картинкой?
📁 ии
У меня скрипт на PyQt5, и в нём присутствуют картинки,
но после компиляции .py в .exe, картинки всё так же отдельно остаются.
Как поместить картинку в скрипт, чтобы скрипт и фото не находились в разных местах?
Создаем файл ресурсов например
res_1.qrc<RCC> <qresource prefix=""/""> <file>images/head.jpg</file> </qresource></RCC>Предполагаем, что картинка
head.jpgнаходится в каталогеimages(images/head.jpg)Загрузить изображение из файла ресурсов:
Команда преобразования
pyrcc5 res_1.qrc -o res_1_rc.pyЭтот способ заключается в том, чтобы преобразовать файл
res_1.qrcв файлres_1_rc.pyВсе картинка вres_1_rc.pyПишем
main.py
import sysfrom PyQt5.QtGui import QPixmap, QMoviefrom PyQt5.QtWidgets import QWidget, QApplication, QHBoxLayout, QLabelimport res_1_rc # Здесь мы импортируем наше изображениеclass ImageView(QWidget): def __init__(self, *args, **kwargs): super(ImageView, self).__init__(*args, **kwargs) layout = QHBoxLayout(self) # Загрузить изображение из файла ресурсов # Команда преобразования pyrcc5 res_1.qrc -o res_1_rc.py # Этот способ заключается в том, чтобы преобразовать файл res.qrc в файл res_1_rc.py layout.addWidget(QLabel(self, pixmap=QPixmap("":/images/head.jpg""))) # обратите внимание на формат получения картинки из res_1_rc.pyif __name__ == ""__main__"": app = QApplication(sys.argv) w = ImageView() w.resize(600, 400) w.show() sys.exit(app.exec_())Прячьте папку с картинкой и запускайте python main.py
pyinstaller -c -F main.pyзапустите
main.exe
Войдите чтобы оставить ответ