it-swarm.com.de

Python "Bad Interpreter" FEHLER

Für Python 2 und 3 scheint alles gut zu funktionieren:

$ which Python
/Library/Frameworks/Python.framework/Versions/2.7/bin/python

$ python --version
Python 2.7.9

$ python2
Python 2.7.9 (v2.7.9:648dcafa7e5f, Dec 10 2014, 10:10:46) 
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.

$ python3
Python 3.4.3 (v3.4.3:9b73f1c3e601, Feb 23 2015, 02:52:03) 
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.

Meine .bash_profile-Einstellungen lauten wie folgt:

PATH="/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}"
export PATH

PATH="/Library/Frameworks/Python.framework/Versions/3.4/bin:${PATH}"
export PATH

Das Problem:

$ virtualenv My_Env
-bash: /usr/local/bin/virtualenv: /usr/local/opt/python3/bin/python3.4: bad interpreter: No such file or directory

Der Pfad oben existiert nicht. Ich habe meine Python-Pakete direkt von der Python-Site heruntergeladen und mit den Standardeinstellungen installiert. 

Vorher habe ich mit HomeBrew installiertes Python verwendet, aber dieser Pfad scheint ohnehin kein Brew-Dateipfad zu sein.

Unterm Strich ... Mein Dateipfad ist irgendwo anders als in meinem .bash_profile durcheinander und ich habe keine Ahnung, wo ich ihn reparieren soll.


Beachten Sie auch, dass ich meinen anderen Computer mit den gleichen exakten .bash_profile- und Python-Installationen eingerichtet habe, und es funktioniert perfekt ...

Beide laufen mit Mac Yosemite.

Danke im Voraus!

13
Dex

Ok, ich konnte das Problem mit einer Neuinstallation von virtualenv beheben. Ich gehe davon aus, dass sich dort das Pfadproblem befand (irgendwo in der Installation von virtualenv). 

10
Dex

Mein Problem war so einfach wie Leerzeichen im Verzeichnis oben in venv/bin/pip, was bedeutete, dass der Pfad in Anführungszeichen stand. Sobald ich sicher war, dass es sich nicht in einem Verzeichnis mit Leerzeichen befand, wurden die Anführungszeichen entfernt.

z.B. #!"/Users/Tomm/MY PROJECT/venv/bin/python" sollte in #!/Users/Tomm/MY-PROJECT/venv/bin/python geändert werden

6
Tomm Armstrong

Durch die Neuinstallation von virtualenv sollte dies gelöst werden. Ich habe auch den gleichen Fehler durchgemacht und die Neuinstallation mit pip hat dies für mich gelöst. 

1
Raghav salotra

Sie können die "Aktivieren" -Datei in Ihrem virtualenv-Ordner "Bin" überprüfen und sehen, was dort in Zeile 42 geschrieben wird. Anschließend können Sie sie manuell einstellen. Beachten Sie dabei, dass alle ausführbaren Dateien in diesem Ordner "Bin" für den Ordner "hardcodiert" sind erste Shebang-Linie.

Sie müssen sie auch ändern. Oder verschieben Sie den Ordner einfach an die richtige Stelle für Ihre aktuelle temporäre Aufgabe. Andernfalls benötigen Sie möglicherweise ein Virtualenv-Verschiebungstool oder installieren es einfach neu.

1
TonyTony