Heim > Backend-Entwicklung > Python-Tutorial > Wie kann ich auf externe Dateien in einer ausführbaren Datei von PyInstaller --onefile zugreifen?

Wie kann ich auf externe Dateien in einer ausführbaren Datei von PyInstaller --onefile zugreifen?

Patricia Arquette
Freigeben: 2024-12-21 15:52:10
Original
1013 Leute haben es durchsucht

How Can I Access External Files in a PyInstaller --onefile Executable?

Bündelung externer Dateien mit PyInstaller über --onefile

Beim Versuch, eine ausführbare Datei mit einer einzigen Datei (.exe) mit PyInstaller zu erstellen -- Mit der onefile-Option können Benutzer Schwierigkeiten beim Einbinden externer Dateien wie Bilder oder Symbole haben. Mit dieser Option wird zwar eine praktische, portable Anwendung erstellt, es werden jedoch häufig keine zusätzlichen Dateien gefunden, die zur Funktionalität der Anwendung beitragen.

Um dieses Problem zu beheben, mussten frühere Versionen von PyInstaller eine Umgebungsvariable festlegen, um den Speicherort anzugeben zusätzliche Dateien. Allerdings haben aktuelle Updates von PyInstaller diesen Ansatz geändert. Die aktuelle Methode für den Zugriff auf externe Dateien im --onefile-Modus erfolgt über die Variable sys._MEIPASS.

Der folgende Code zeigt, wie mit dem aktualisierten Ansatz auf externe Dateien zugegriffen wird:

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)
Nach dem Login kopieren

Von Wenn Sie diese Funktion mit dem relativen Pfad zur externen Datei aufrufen, können Sie deren absoluten Pfad erhalten, unabhängig davon, ob Sie die Anwendung in einer Entwicklungsumgebung oder in einer von PyInstaller generierten Umgebung ausführen ausführbar.

Das obige ist der detaillierte Inhalt vonWie kann ich auf externe Dateien in einer ausführbaren Datei von PyInstaller --onefile zugreifen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage