“Python myscript” ignoriert “#! / Usr / bin / env pythonX” wo pythonX nicht existiert

Warum nichttest.py throw errorenv: python3: No such file or directory Wenn Python 3 nicht installiert ist?

uf meinem System (Mac OS X) ist Python 2.7 installiert, Python 3 jedoch nich

$ /usr/bin/env python -V
Python 2.7.12
$ /usr/bin/env python3 -V
env: python3: No such file or directory

Datei test.py:

#!/usr/bin/env python3
import sys
print sys.executable

Executing test.py:

$ python test.py
/usr/local/opt/python/bin/python2.7

Ich dachte, dass, da Python 3 nicht auf meinem System vorhanden ist, mit der Shebang-Linie#!/usr/bin/env python3 wird einen Fehler auslösen und das Skript beenden. Aberenv hat tatsächlich den Python 2.7-Interpreter ausgewählt.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage