Tolle punktgenaue Informationen Es geht um das Mac-Terminal. In Windows nicht verifiziert
Ich habe den vollständigen Pfad der exe-Datei in sys.args [0] erhalten, also habe ich ihn verwendet.
Beim Ausführen der exe-Datei scheint sie in das Ausgangsverzeichnis des Benutzers zu dekomprimieren und den Prozess auszuführen. Ich wollte die Excel-Datei an den Speicherort ausspucken, an dem die Exe ausgeführt wurde, aber die Excel-Datei wird im Ausgangsverzeichnis generiert, unabhängig vom Speicherort, an dem die Exe-Datei ausgeführt wird. Die Python-Datei wird nach dem Dekomprimieren der Exe ebenfalls in das Home-Verzeichnis erweitert.
print(os.path.abspath(__file__)))
# /Users/Nutzername/do_something.py
Übergeben Sie die ausführbare Datei als Argument, wenn Sie einen Python-Befehl ausführen oder im Terminal ausführen. Ja, ist es nicht möglich, "print (sys.args)" zu verwenden? Ich dachte, ich habe es versucht und es kam heraus.
[/Users/Nutzername/exe Dateispeicherung/dist/do_something_exe_file]
Wenn Sie danach die Standardoperation ausführen, ist dies in Ordnung
python
file_path = os.path.join(os.path.dirname(sys.argv[0]), file_name)
Ich denke, dass es eine Branche ist, in der Grundkenntnisse und periphere Kenntnisse wichtig sind.