Python "плохой интерпретатор" ОШИБКА

Все, кажется, отлично работает как для python 2, так и для 3:

$ 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.

Настройки моего .bash_profile следующие:

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

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

Проблема:

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

Путь выше не существует. Я загрузил свои пакеты python непосредственно с сайта python и установил с использованием настроек по умолчанию.

До этого я использовал Python, установленный с HomeBrew, но этот путь все равно не является файловым пути brew.

Нижняя строка... Мой путь к файлу запутан где-то, кроме моего .bash_profile, и я понятия не имею, где его исправить.


Также обратите внимание, что я настроил свой другой компьютер с теми же точными установками .bash_profile и python, и он отлично работает...

Оба работают под управлением Mac Yosemite.

Спасибо заранее!

Ответ 1

Хорошо, я смог исправить проблему с новой установкой virtualenv. Я предполагаю, что именно там был найден путь (где-то в установке virtualenv).

Ответ 2

Моя проблема была такой же простой, как наличие пробелов в каталоге в верхней части venv/bin/pip что означало, что путь был внутри кавычек. Как только я убедился, что он не находится в каталоге с пробелами, и удалил кавычки, он работал.

например. #!"/Users/Tomm/MY PROJECT/venv/bin/python" следует изменить на #!/Users/Tomm/MY-PROJECT/venv/bin/python

Ответ 3

Вы можете проверить "активировать" файл в вашей папке виртуального виртуального диска и посмотреть, что там написано на строке 42, а затем можно вручную установить его, имея в виду, что все исполняемые файлы в этой папке bin сложны закодированный для первой линии shebang.

Вам также нужно будет изменить их. Или просто переместите папку в нужное место для текущей временной задачи, иначе вам может понадобиться виртуальный инструмент перемещения или просто переустановите его.

Ответ 4

Переустановка virtualenv должна решить эту проблему. Я также прошел через ту же ошибку, и переустановка с помощью pip решила это для меня.