Python Shebang

Python Shebang
Un shebang fait référence à un ensemble de caractères uniques inclus au début d'un fichier de script. Un shebang définit le type et le chemin du programme qui devrait exécuter le script.

Le shebang commence avec les personnages #! suivi du chemin vers le programme utilisé pour exécuter le script.

Shebang en python

Python est une langue de script. Par conséquent, cela nous permet de spécifier la version et le chemin de l'interprète Python à utiliser via le shebang.

La syntaxe pour ajouter un shebang en python est comme indiqué:

#!interprète [Arg facultatif]

Le #! Les personnages sont utilisés pour désigner le début d'un shebang.

L'interprète vous permet de spécifier le chemin d'accès à l'interprète utilisé pour exécuter le script.

Enfin, l'argument vous permet de spécifier l'argument transmis à l'exécutable spécifié. Pour notre cas, cela représente l'interprète utilisé pour exécuter le script.

Si vous souhaitez qu'un script soit exécuté avec la dernière version de l'interpréteur Python, ajoutez l'entrée suivante au début de votre script:

#!/ usr / bin / env python3

Le shebang ci-dessus dit au système d'exécuter le script avec l'interprète Python 3.

Dans l'exemple ci-dessus, nous utilisons la commande / usr / bin / env de faire passer le chemin vers l'interpréteur Python au lieu de le taper manuellement.

La commande Env nous permet de montrer et de récupérer des variables d'environnement qui sont dans le système.

Par conséquent, exécuter la commande:

$ / usr / bin / env python

lance l'interprète Python installé.

Un autre exemple de shebang est comme indiqué ci-dessous:

#!/ home / debian / anaconda3 / bin / python

Dans ce cas, le shebang spécifie le chemin complet vers l'interpréteur Python cible au lieu d'en chercher un à partir de la variable d'environnement du système.

Notez que pour éviter d'inclure manuellement le chemin vers l'interprète, car cela peut entraîner des erreurs si l'utilisateur n'a pas d'interprète installé à l'emplacement de réglage.

Pour un script exécutant le code Python 2, vous pouvez ajouter un shebang comme indiqué:

#!/ usr / bin / env python2

Une autre fonction commune et pratique d'un shebang est de dire au système qu'un fichier est exécutable sans appeler Python sur le fichier.

Prenons un exemple simple. Supposons que nous ayons un fichier appelé bonjour.py,

$ touch bonjour.py
$ nano bonjour.py

Ajoutez une déclaration d'impression simple comme indiqué:

Imprimer ("Salut, les compagnons de geeks!")

Enregistrez et fermez le fichier.

Sans Shebang, nous devons appeler le programme Python pour exécuter le fichier:

$ python bonjour.py
salut, compagnons geeks!

Cependant, si nous ajoutons un shebang

#!/ usr / bin / env python3
Imprimer ("Salut, les compagnons de geeks!")

Nous pouvons exécuter le script comme:

$ chmod + x bonjour.py
$ ./Bonjour.py

La bonne chose à propos de l'utilisation de l'Env Shebang, c'est qu'il est multiplateforme. Cela signifie que vous n'avez pas à modifier le shebang pour chaque système.

Ai-je vraiment besoin d'un shebang

Bien que les shebangs soient utiles et puissent offrir un avantage supplémentaire à vos scripts, il n'est pas nécessaire que vous les utilisiez.

Par exemple, si vous souhaitez exécuter un script en tant qu'exécutable autonome, avoir un shebang peut être très bénéfique.

Cependant, si vous devez partager votre code avec d'autres développeurs, y compris un shebang peut entraîner des problèmes car tous les développeurs ne partagent pas un environnement similaire.

Par conséquent, avant d'inclure un shebang dans votre script, pensez à comment et qui va exécuter votre script.

Fermeture

Dans cet article, nous avons discuté du concept d'un shebang et de son rôle dans les scripts. Nous avons également illustré comment travailler avec le python shebang.