2013-05-08 3 views
1

Я работаю с python 3. Моя проблема в том, что каждый раз, когда я устанавливаю пакет, он устанавливает его для python2.Экспорт библиотек из python 2 из python 3

Например, я хочу использовать mapnik, поэтому я только что установил его с помощью homebrew, а затем создал папку для python2.7 в mapnik lib. Так оно работает, когда я использую Python2.7, но не с python3, потому что он не может найти модуль mapnik.

Как добавить его в python 3? python3 путь:/Users/gabrielgautron/документы/python3

В конце установки Mapnik, я иметь следующее:

For non-homebrew Python, you need to amend your PYTHONPATH like so: 
    export PYTHONPATH=/usr/local/lib/python2.7/site-packages:$PYTHONPATH 

Так я запускаю эту команду в терминале, а затем:

MacBook-Pro-de-Gabriel-Gautron:local gabrielgautron$ python3 
Python 3.2.4 (v3.2.4:1e10bdeabe3d, Apr 6 2013, 11:25:28) 
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import mapnik 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "/usr/local/lib/python2.7/site-packages/mapnik/__init__.py", line 69, in <module> 
    from _mapnik import * 
ImportError: No module named _mapnik 

Идея?

Пожалуйста :)

+0

Вы устанавливаете его с помощью 'pip'? Пип имеет разные вкусы для конкретной версии python, которую он устанавливает, например, 'pip-2.7',' pip-2.6' и т. Д. Каков вывод 'pip -version' или тому подобное? –

+0

Я думаю, что вы правы: pip 1.3.1 из /Library/Python/2.7/site-packages/pip-1.3.1-py2.7.egg (python 2.7), но я intsalling это с homebrew – Gabriel

ответ

1

Глядя на brew recipe, это зависит от версии питона, доступные при запуске brew:

def which_python 
    "python" + `python -c 'import sys;print(sys.version[:3])'`.strip 
end 

Поэтому, учитывая, что вы должны изменить ваш PATH при вызове brew так что вы используете python3 как python. Например:

# Figure out the path to python3 
PY3DIR=`dirname $(which python3)` 
# And /then/ install with brew. That will have it use python3 to get its path 
PATH=$PY3DIR:$PATH brew install mapnik 
+0

Когда вы выполните вторую установку, где она будет установлена? Было бы неплохо убедиться, что рецепт пива использует правильную версию python. –

+0

спасибо, Это не работает для меня, и вероятно, сделал ошибку: PY3DIR = '/ Users/gabrielgautron/py3env/Библиотека/python3.2/сайт-пакеты $ (которые python3)' тогда: PATH = $ PY3DIR: $ PATH brew install mapnik И все еще ведет себя одинаково. В частности, я получаю: Для не доморощенного Python, вы должны изменить свой PYTHONPATH следующим образом: экспорт PYTHONPATH =/USR/местные/Библиотека/python2.7/сайт-пакеты: $ PYTHONPATH Большое спасибо за помощь меня! – Gabriel

+0

Извините, я удалил свое сообщение. Наконец, это закончилось, это было просто, что код был так долго компилировать .. – Gabriel

Смежные вопросы