Bestimmen des Anwendungspfads in pyInstaller EXE
In Python-Anwendungen, die mit pyInstaller als EXEs gebündelt sind, Zugriff auf den Anwendungspfad mit sys.path[0] kann problematisch sein. Dieser Pfad kann leer oder irreführend sein. Um diese Herausforderung zu meistern, ist ein robusterer Ansatz zur Bestimmung des Speicherorts der Anwendung erforderlich.
Lösung
Um den Pfad der Anwendung zu ermitteln, unterscheiden Sie zwischen ihrer Ausführung als Skript oder als eingefrorene EXE-Datei:
import os import sys config_name = 'myapp.cfg' # Check if application is a script file or frozen exe if getattr(sys, 'frozen', False): # Frozen executable, get the path from sys.executable application_path = os.path.dirname(sys.executable) elif __file__: # Script file, get the path from __file__ application_path = os.path.dirname(__file__) config_path = os.path.join(application_path, config_name)
Diese Lösung ruft effektiv den Pfad der Anwendung ab, unabhängig von ihrem Ausführungsmodus. Es ermöglicht die zuverlässige Lokalisierung relativer Dateien und stellt so die Funktionalität der Anwendung sicher.
Das obige ist der detaillierte Inhalt vonWie bestimme ich den Anwendungspfad in einer PyInstaller-EXE-Datei?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!