3 votes

Comment utiliser le chemin du python de l'environnement conda actuel comme shebang pour un script ?

Supposons que vous ayez deux environnements Conda : py3_env y py3_clone_env

Si vous avez un script.py avec la structure suivante :

#![shebang]
import sys
def main():
    print("hello world", file=sys.stdout)
if __name__ == "__main__":
    main()

Est-il possible de faire en sorte que le shebang soit une variable déterminée à partir de l'environnement conda actuel ?

Par exemple :

De py3_env l'environnement :

#!~/anaconda/envs/py3_env/bin/python

et de py3_clone_env l'environnement :

#!~/anaconda/envs/py3_clone_env/bin/python

9voto

Sraw Points 7876

Je pense que ce dont vous avez besoin, c'est #!/usr/bin/env python :

#!/usr/bin/env python
import sys
print(sys.executable)

En l'occurrence, python est le python sur la base des données actuelles PATH les variables d'environnement. Il s'agit donc du python de votre virtualenv actuel.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X