Je tente de démarrer un fichier exe (le fichier exe est la sortie du projet C++ compilé avec Visual Studio) à partir d'un programme python. Dans les propriétés de ce projet C++ (configuration -> Propriétés-> debugging-> environnement) le paramètre suivant dans lecomment définir PATH =% PATH% comme environnement dans le script Python?
(PATH = %PATH%;lib\testfolder1;lib\testfolder2)
est donné.
est-il possible de définir la variable d'environnement chemin vers
- PATH =% PATH%
- lib \ testfolder1
- lib \ testfolder2
dans un programme de python?
Merci à l'avance pour votre replay
Path est une variable d'environnement du système d'exploitation, la modification peut endommager temporairement (jusqu'au prochain démarrage) les chemins d'accès de plusieurs programmes ou bibliothèques. Si la modification du chemin n'est requise que pour l'exécution de votre programme, mieux vaut sauvegarder une copie du chemin d'origine, puis le modifier ** additivement **, afin qu'il puisse être initialisé à sa valeur d'origine avant de quitter le programme. % PATH% signifie la variable de chemin elle-même, qui est un moyen au niveau de l'OS de définir la variable de chemin de manière additive. Tels que: Si le chemin est C: \; C: \ d1, PATH =% PATH%; C: \ d2 est le même que le typage PATH = C: \; C: \ d1; C: \ d2 – Ihsan
remercie Lhsan pour l'explication détaillée. J'ai le% PATH% mal compris avant. Maintenant, cela fonctionne – sasi
Si vous démarrez un exécutable, utilisez 'subprocess.Popen', ou l'une des fonctions de haut niveau telles que' subprocess.check_output', et utilisez son option 'env' pour passer un environnement modifié au enfant. Par exemple: 'environ = os.environ.copy();' 'environ ['CHEMIN'] + = os.pathsep + os.pathsep.join ([r'lib \ testfolder1 ', r'lib \ testfolder2']) ; '' p = subprocess.Popen ([exepath, arg1, arg2, ...], env = environ) '. – eryksun