Question assez simple : Sous Linux, pourquoi Python requiert-il la ligne
#!/usr/bin/python
au début d'un fichier Python, puisque Windows ne le fait pas ?
Qu'est-ce qu'il fait ? Parce que la description "Liens vers Python" est un peu vague...
Question assez simple : Sous Linux, pourquoi Python requiert-il la ligne
#!/usr/bin/python
au début d'un fichier Python, puisque Windows ne le fait pas ?
Qu'est-ce qu'il fait ? Parce que la description "Liens vers Python" est un peu vague...
Si vous avez plusieurs versions de Python installées, /usr/bin/env
s'assurera que l'interpréteur utilisé est le premier sur la liste de l'environnement $PATH
. L'alternative serait de coder en dur quelque chose comme #!/usr/bin/python
;
Sous Unix, un fichier exécutable destiné à être interprété peut indiquer l'interpréteur à utiliser grâce à l'attribut #!
au début de la première ligne, suivi de l'interpréteur (et de tous les drapeaux dont il peut avoir besoin).
Cette règle ne s'applique qu'aux systèmes basés sur UNIX.
Utile pour les systèmes d'exploitation comme Linux, où Python 2.x est toujours la norme, mais où la plupart des gens téléchargent également la version 3.x.
2.x s'exécuterait par défaut. Donc mon code 3.x, je le préfixe avec
#!/usr/bin/env python3
pour que la version 3.x exécute le code. Je peux même spécifier jusqu'à la révision mineure (Python 3.x.y.z) si je souhaite avoir des versions bêta ou des versions légèrement plus anciennes.
SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.