Formation PUB400 : Python, 2018 Python

2.5 Shebang ou hash bang : #!


Les script Python commencent généralement par une ligne qui débute par les caractères #! suivis par le chemin de l'interpréteur Python. Cette ligne se nomme shebang ou hash bang.

La présence du shebang permet d'appeler le script Python sans avoir à préciser le nom de son interpréteur.

L'usager devra avoir les droits d'exécution sur le script.

Terminal

chmod u+x mon_script.py

Le script pourra être appelé comme suit :

Terminal

./mon_script.py

Shebang qui utilise la variable d'environnement $PATH

La meilleure technique consiste à utiliser /usr/bin/env devant le nom de l'interpréteur. 

Cette formulation fait en sorte que le système retrouvera le chemin exact de l'interpréteur à partir de la variable d'environnement $PATH de l'usager.

Ceci assure un maximum de compatibilité si le script doit être exécuté sur un autre système ou même par un autre usager.

Python

#!/usr/bin/env python3

Shebang fixe

Parfois, on retrouve plutôt ceci, qui correspond au chemin donné lorsqu'on entre la commande which python3 dans une fenêtre terminal.

Python

#!/usr/bin python3

Remarquez qu'il n'y a pas de barre oblique avant le mot python3.

Cette formulation fonctionne également mais elle risque de ne plus fonctionner si le script est utilisé sur un autre système ou par un autre usager.

Script sans shebang

Dans le cas où le script Phython ne débute pas par un shebang, il faudra ajouter python3 devant son nom pour pouvoir l'exécuter.

Notez qu'à ce moment, l'usager n'a pas besoin d'avoir les droits d'exécution sur le fichier.

Terminal

python3 mon_script.py

 

▼Publicité

Veuillez noter que le contenu de cette fiche vous est partagé à titre gracieux, au meilleur de mes connaissances et sans aucune garantie.
Merci de partager !

Site fièrement hébergé chez A2 Hosting.

Soumettre