2013-05-12 2 views
3

Я искал поиск в стеке и искал переполнение стека для решений, но я не могу найти способ исправить это. В основном, это моя проблема: я пытаюсь использовать модуль Image/PIL Python, который поставляется с предустановленным дистрибутивом Enthought, но не с дистрибутивом python по умолчанию OSX.Проблемы с Python shebang с импортирующими модулями (и выбором правильного интерпретатора)

Обратите внимание, что импорт PIL/изображения работает на оболочке enthought.

Мой притон

#!/usr/local/bin/python 

Есть простой способ изменить версию питона я использую?

Благодарим за помощь.

EDIT: Я нашел решение. Набрав «python» в bash (без кавычек), я нашел каталог, в котором хранился список enthought. (/Library/Frameworks/Python.framework/Versions/Current/bin/python) для меня. Тогда я должен был изменить hashbang к

#!/Library/Frameworks/Python.framework/Versions/Current/bin/python 
+0

не имеют хорошо сформулированный ответ, но я предсказываю, что один из ваших лучших ответов будет включать в себя virtualenv. – minopret

ответ

2

Да. virtualenv - это приемлемый способ изолировать среды python, поэтому вы можете использовать любую версию python, которую вы так хотите.

В то время как вы можете делать то, что вы делали в вашем вопросе нормальновсасывающего ответа выше, переключение hashbang к

#!/Library/Frameworks/Python.framework/Versions/Current/bin/python 

вы начнете находить вещи заблуждения, когда количество ваших питон сценариев увеличения и у вас есть сделать «массовый поиск и замену», чтобы убедиться, что все ваши сценарии указывают на правильную версию python.

Поэтому рекомендация действительно использовать virtualenv и его обертку сестра mkvirtualenv

И оставить hashbang в ваших питона сценариев в одиночку.

И как было упомянуто @ shx2 ниже, использовать портативный притон линию

#! /usr/bin/env python 
+0

Должен ли я просто найти его, чтобы найти правильную версию и установить ее, или есть лучший способ? – James

+0

'python --version' дает вам текущую версию python, установленную в системном масштабе. Вы должны проверить macports (если вы используете Mac OS X), чтобы узнать, как загрузить несколько версий python и управлять этими версиями, используя 'port select'. –

1

Насколько я знаю, наиболее рекомендуемым/самый портативный притон линия такова:

#! /usr/bin/env python