... используя Linux (xubuntu). Как правильно установить python2.7.3 + numpy + scipy + matplotlib + scikits.statsmodels + pandas0.7.3? Моя конечная цель - заставить их работать. Эта проблема:

~$ python --version
Python 2.7.3

так что у меня уже есть система по умолчанию 2.7.3, и это хорошо!

~$ dpkg -s python-numpy
Package: python-numpy
Status: install ok installed

и у меня уже есть NumPy установлен! отличный! Но...

~$ python
Python 2.7.3 (default, Oct 23 2012, 01:07:38) 
[GCC 4.6.1] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy as nmp
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named numpy

этот модуль не может быть найден Python. То же самое со Сципионом, матплотлибом. Зачем?

~$ sudo apt-get install python-numpy
[...] 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
python-numpy is already the newest version.
[...]

почему он не видит numpy и другие?

Обновить:

>>> import sys
>>> print sys.path
['', '/usr/local/lib/python27.zip', '/usr/local/lib/python2.7', '/usr/local/lib/python2.7/plat-linux2', '/usr/local/lib/python2.7/lib-tk', '/usr/local/lib/python2.7/lib-old', '/usr/local/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/site-packages']
>>> 

так что у меня есть /usr/local/lib/python2.7

~$ pip freeze
Warning: cannot find svn location for distribute==0.6.16dev-r0
BzrTools==2.4.0
CDApplet==1.0
[...]
matplotlib==1.0.1
mutagen==1.19
numpy==1.5.1
[...]
pandas==0.7.3
papyon==0.5.5
[...]
pytz==2012g
pyxdg==0.19
reportlab==2.5
scikits.statsmodels==0.3.1
scipy==0.11.0
[...]
zope.interface==3.6.1

как видите, эти модули уже установлены! Но! ls -la /usr /local /lib / дает ТОЛЬКО каталог python2.7. И еще

~$ python -V
Python 2.7.3

а также

import sys sys.version '2.7.3 (по умолчанию, 23 октября 2012 г., 01:07:38) \n [GCC 4.6.1]'

обновлено:

Вероятно, я пропустил другой экземпляр ... Один в /usr/Python-2.7.3/ и второй (кажется, что он был установлен "руками" очень давно) в /usr/python2.7.3/Python-2.7.3/ Но как две идентичные версии могут работать на одной и той же версии время??? Возможно, один из них "отключен" (не используется ни одной программой, но я не знаю, как проверить, использует ли его какая-либо программа).

~$ ls -la /usr/bin/python*
lrwxrwxrwx 1 root root       9 2011-11-01 11:11 /usr/bin/python -> python2.7
-rwxr-xr-x 1 root root 2476800 2012-09-28 19:48 /usr/bin/python2.6
-rwxr-xr-x 1 root root    1452 2012-09-28 19:45 /usr/bin/python2.6-config
-rwxr-xr-x 1 root root 2586060 2012-07-21 01:42 /usr/bin/python2.7
-rwxr-xr-x 1 root root    1652 2012-07-21 01:40 /usr/bin/python2.7-config
lrwxrwxrwx 1 root root       9 2011-10-05 23:53 /usr/bin/python3 -> python3.2
lrwxrwxrwx 1 root root      11 2011-09-06 02:04 /usr/bin/python3.2 -> python3.2mu
-rwxr-xr-x 1 root root 2852896 2011-09-06 02:04 /usr/bin/python3.2mu
lrwxrwxrwx 1 root root      16 2011-10-08 19:50 /usr/bin/python-config -> python2.7-config

есть символическая ссылка python-> python2.7, может быть, я могу ln -f -s эту ссылку на точное /usr/Python-2.7.3/python назначение без вреда ?? И как правильно удалить «копию» 2.7.3? И еще ...

~$ ls -la /usr/bin/virtualenv 
-rwxr-xr-x 1 root root 58 2011-03-16 18:55 /usr/bin/virtualenv

но работает только в этом случае:

~$ /usr/bin/python /usr/bin/virtualenv qenv
New python executable in qenv/bin/python
Installing distribute....................................................................................................................................................................................done.
Installing pip...............done.

и это не работает!

 python virtualenv.py pyenv

Я постараюсь быть более понятным. Просто вопросы. Почему я могу импортировать numpy, начиная с '/usr/bin/python', но не могу использовать только 'python'? Если я хочу установить другую версию python для разных приложений, каков наилучший способ сделать это? Как установить пакеты в выбранный pythonpath? Я не нашел полное руководство.


Спасибо всем! Решил это так:

$ sudo nano /usr/share/python/debian_defaults
$ sudo mv /usr/bin/python /usr/bin/python2.Y_old
$ sudo ln -s -f /usr/bin/python2.7 /usr/bin/python

Моя версия по умолчанию была 2.7.3, а теперь 2.7.2+. Я не вижу огромной разницы, поэтому думаю, что это было довольно безопасно. Но мне нужно больше узнать о

virtualenv

а также

Пип и ПУТЬ по умолчанию

3 ответа3

3

Я настоятельно рекомендую вам использовать virtualenv. Virtualenv позволяет создавать среду Python для каждого проекта. Мой рабочий процесс для начала нового проекта

  • Создайте каталог проекта myapp
  • Загрузите virtualenv с веб-сайта https://github.com/pypa/virtualenv/tarball/develop.
  • Создайте виртуальную среду: python virtualenv.py pyenv
  • Активировать источник virtualenv source pyenv/bin/activate
  • Установите пакеты в виртуальной среде:

    pip install -U numpy matplotlib pandas ...

С помощью этой настройки вы можете контролировать версию, переустанавливать или удалять пакеты без необходимости зависеть от версии, которая доступна в репозиториях.

1

Это, вероятно, лучше спросить на форуме Xubuntu, потому что это, скорее всего, проблема конфигурации. Возможно, установлена более одной версии python?

В интерпретаторе python введите следующий код;

import sys
print sys.path

Убедитесь, что каталог numpy установлен в одном из каталогов, перечисленных в sys.path .

В моей FreeBSD (UNIX-подобной) системе с python 2.7.3 numpy устанавливается как подкаталог /usr/local/lib/python2.7/site-packages/ . В Windows это, вероятно, C:\Python27\Lib\site-packages\ .

Если, например, у вас также установлен Python 3.x, это может быть numpy и так далее, установленный для этого Python. В этом случае посмотрите в /usr/local/lib/python3.x/site-packages/ или C:\Python3x\Lib\site-packages\ .

0

Похоже, вы используете установленный пользователем Python 2.7.3 в /usr/local/bin . Используя /usr/bin/python , вы сможете import numpy ; apt-get устанавливается в /usr но не в /usr/local .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .