


Comment puis-je accéder correctement aux fichiers de données regroupés dans un exécutable PyInstaller --onefile ?
Regrouper des fichiers de données avec PyInstaller (--onefile)
Regrouper des fichiers de données dans un seul fichier exécutable (--onefile) peut être un solution pratique pour le déploiement d’applications. Cependant, rencontrer des problèmes lors de l’utilisation de cette option peut être frustrant. Dans ce guide, nous aborderons un problème courant où les fichiers externes tels que les images et les icônes ne se chargent pas correctement bien qu'ils soient inclus dans le fichier .spec.
Aperçu du problème
L'interrogateur n'a pas pu regrouper une image et une icône dans son exécutable PyInstaller à l'aide de l'option --onefile. Alors que l'application fonctionnait correctement avec --onedir, l'utilisation de --onefile entraînait la non-localisation des fichiers externes. Ce problème persistait même si les fichiers étaient présents dans le répertoire temporaire créé lors de l'exécution de l'exécutable.
Solution
Dans les anciennes versions de PyInstaller, une variable d'environnement était définie sur pointez vers l’emplacement des fichiers regroupés. Toutefois, dans les versions plus récentes, ce comportement a changé. Au lieu de cela, le chemin est désormais défini comme sys._MEIPASS.
Pour résoudre ce problème, mettez à jour votre code pour utiliser sys._MEIPASS pour accéder aux fichiers regroupés :
import sys def resource_path(relative_path): """ Get absolute path to resource, works for dev and for PyInstaller """ try: # PyInstaller creates a temp folder and stores path in _MEIPASS base_path = sys._MEIPASS except Exception: base_path = os.path.abspath(".") return os.path.join(base_path, relative_path)
En utilisant cette mise à jour approche, vous pouvez accéder de manière fiable aux fichiers regroupés dans votre exécutable PyInstaller, même lorsque vous utilisez l'option --onefile.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Comment utiliser Python pour trouver la distribution ZIPF d'un fichier texte

Comment télécharger des fichiers dans Python

Comment utiliser la belle soupe pour analyser HTML?

Comment travailler avec des documents PDF à l'aide de Python

Comment se cacher en utilisant Redis dans les applications Django

Présentation de la boîte à outils en langage naturel (NLTK)

Comment effectuer l'apprentissage en profondeur avec TensorFlow ou Pytorch?
