[PYTHON] Obtenez l'emplacement du fichier où se trouve l'exe lors de l'exécution de l'exe créé par PyInstaller

Superbes informations précises Il s'agit du terminal Mac. Non vérifié dans Windows

Conclusion

J'ai obtenu le chemin complet du fichier exe dans sys.args [0], donc je l'ai utilisé.

Où en difficulté

Lors de l'exécution du fichier exe, il semble le décompresser dans le répertoire personnel de l'utilisateur et exécuter le processus. Je voulais cracher le fichier Excel à l'emplacement où l'exe a été exécuté, mais le fichier Excel est généré dans le répertoire personnel quel que soit l'emplacement où le fichier exe est exécuté. Le fichier python après la décompression de l'exe sera également développé dans le répertoire personnel.

print(os.path.abspath(__file__)))
# /Users/Nom d'utilisateur/do_something.py

Essayez print (sys.args)

Lorsque vous exécutez une commande python ou exécutez dans le terminal, passez le fichier exécutable en argument. Ouais, n'est-il pas possible d'utiliser print (sys.args)? J'ai pensé, je l'ai essayé et il est sorti.

[/Users/Nom d'utilisateur/stockage de fichiers exe/dist/do_something_exe_file]

Rendez l'emplacement du fichier identique à l'emplacement d'exécution.

Après cela, si vous effectuez l'opération standard, tout va bien

python


file_path = os.path.join(os.path.dirname(sys.argv[0]), file_name)

Impressions

Je pense que c'est une industrie où les connaissances de base et les connaissances périphériques sont importantes.

Recommended Posts

Obtenez l'emplacement du fichier où se trouve l'exe lors de l'exécution de l'exe créé par PyInstaller
Lorsqu'un fichier est placé dans le dossier partagé de Raspberry Pi, le processus est exécuté.
Je veux obtenir le chemin du répertoire où le fichier en cours d'exécution est stocké.
Solution temporaire au problème que le fichier exe créé par PyInstaller est confondu avec un virus cheval de Troie par AVAST ou AVG
Comment obtenir le répertoire où se trouve le EXE construit avec Pyinstaller
Lorsque j'exécute le fichier exe avec pyinstaller, mon PC se bloque.
EXE l'application créée avec PyQt5 avec PyInstaller
[Python] Récupère le code de caractère du fichier
Téléchargez le fichier csv créé par Google Colaboratory
Obtenir la région dans laquelle AWS Lambda s'exécute
Obtenez la date de mise à jour du fichier de mémorandum Python.
Afficher progressivement la sortie de la commande exécutée par le sous-processus.
Autour de l'endroit où la valeur d'Errbot est stockée
[Python] Obtenez le chemin d'accès officiel du fichier de raccourci (.lnk)
Obtenez l'image de "Suzu Hirose" par recherche d'images Google.
Obtenez le SQL exécuté par l'ensemble de données (mappeur Python OR)
Quand vous pensez que la mise à jour de ManjaroLinux est étrange
La méthode de copie de pandas.DataFrame est une copie profonde par défaut