Comment trouver le chemin complet de l'interpréteur Python en cours d'exécution à partir du script Python en cours d'exécution?
403
sys.executable
contient le chemin complet de l'interpréteur Python en cours d'exécution.
import sys
print(sys.executable)
qui est maintenant documenté ici
/usr/bin/env python
exécuté en tant queenv -i ./script
. Dans ce cas, il renvoie le répertoire de travail actuel.#!/usr/bin/env python3
renverra le chemin binaire complet correct viasys.executable
. Peut-être que votre version OS ou Python se comporte légèrement différemment.python
et lespython3
commandes et l'exécutable correct imprimé.Notant simplement une manière différente d’utilité douteuse, en utilisant
os.environ
:par exemple
la source
_
soit réglé par le shell. Mais cela n'a pas besoin d'être réglé, donc cela pourrait donner la mauvaise réponse.Il existe plusieurs façons alternatives de comprendre le python actuellement utilisé sous Linux: 1)
which python
commande. 2)command -v python
commande 3)type python
commandeDe même, sous Windows avec Cygwin, le résultat sera également le même.
Si vous êtes déjà dans le shell python. Essayez n'importe lequel d'entre eux. Remarque: Il s'agit d'une autre méthode. Pas la meilleure façon pythonique.
la source
python
partir du shell. Si vous commencez avec un chemin différent explicite (par exemple/opt/python/2.5/bin/python
), ou utilisezpython3
puis exécutez ces commandes python, toutes ont produit des réponses incorrectes et cela n'a rien à voir avec le fait de ne pas être la manière la plus pythonique, c'est tout simplement faux.