Проблемы с установкой Numpy в Python 2.7.5 [duplicate]

Вам просто нужно запустить query

db.test.find(
{"shapes.color": "red"}, 
{shapes: {$elemMatch: {color: "red"}}});

вывод этого запроса:

{
    "_id" : ObjectId("562e7c594c12942f08fe4192"),
    "shapes" : [ 
        {"shape" : "circle", "color" : "red"}
    ]
}

, как вы ожидали, это даст точное поле из массива, которое соответствует цвету: 'красный'.

59
задан Isaiah Nields 22 November 2015 в 22:13
поделиться

14 ответов

Это сработало для меня:

sudo pip install numpy --upgrade --ignore-installed
4
ответ дан a20 21 August 2018 в 17:46
поделиться
  • 1
    Это сработало и для меня. У меня была та же проблема, когда была установлена ​​старая версия numpy, и мне не удалось переместить или удалить старый numpy – Amit Singh 12 March 2018 в 12:39

Я столкнулся с той же проблемой из-за несоответствий документации. Эта страница говорит, что примеры в документации лучше всего работают с python 3.x: https://opencv-python-tutroals.readthedocs.io/en/latest/py_tutorials/py_setup/py_intro/py_intro.html#intro , тогда как на этой странице установки есть ссылки на python 2.7 и более старые версии numpy и matplotlib: https://opencv-python-tutroals.readthedocs.io/en/latest/py_tutorials/py_setup/py_setup_in_windows/py_setup_in_windows. html

Моя настройка была такой: у меня уже установлены Python 3.6 и 3.5, но поскольку документы OpenCv-python говорят, что лучше всего работают с 2.7.x, я также установил эту версию. После того, как я установил numpy (в директории Python27, без pip, но с экстрактором по умолчанию, поскольку pip не является частью установки python 2.7 по умолчанию, как в 3.6), я столкнулся с этой ошибкой RuntimeError: module compiled against API version a but this version of numpy is. Я пробовал много разных версий как numpy, так и opencv, но безрезультатно. Наконец, я просто удалил numpy из python27 (просто удалил папку в пакетах сайта, а также любые другие оставшиеся имена с нумерованными именами) и установил последние версии numpy, matplotlib и opencv в версии Python3.6, используя pip no проблема. С тех пор работает opencv.

Надеюсь, это немного сэкономит время.

0
ответ дан Aleksandar Ruseski 21 August 2018 в 17:46
поделиться

Чтобы решить проблему, выполните следующие действия:

Сначала удалите numpy

sudo pip unintsall numpy

Установите numpy с параметром - no-cache-dir

sudo pip install --no-cache-dir numpy

И указать какую-либо конкретную версию, например 1.14.2

sudo pip install --no-cache-dir numpy==1.14.2
3
ответ дан GauravLuthra 21 August 2018 в 17:46
поделиться

Вы также можете проверить свой $PYTHONPATH.

Чтобы проверить ваш путь:

    echo $PYTHONPATH

Чтобы изменить ваш путь (я использую nano, но вы могли бы отредактируйте другой способ)

    nano ~/.bashrc

Ищите строку с export PYTHONPATH ...

После внесения изменений не забудьте

   source ~/.bashrc
0
ответ дан gtcoder 21 August 2018 в 17:46
поделиться

Возможно, вы захотите проверить версию matplotlib.

Как-то я установил dev-версию matplotlib, которая вызвала проблему. Исправлено его понижение до стабильного выпуска.

Можно также попробовать python -v -c 'import YOUR_PACKAGE' 2>&1 | less, чтобы увидеть, где произошла ошибка, и если строки выше ошибки могут дать вам некоторые подсказки.

0
ответ дан jdv 21 August 2018 в 17:46
поделиться

Проверьте путь

import numpy
print numpy.__path__

Для меня это было /System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/numpy. Поэтому я переместил его во временное место

sudo mv /System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/numpy \
/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/numpy_old

, а затем в следующий раз, когда я импортировал numpy, путь был /Library/Python/2.7/site-packages/numpy/init.pyc, и все было хорошо.

16
ответ дан JnBrymn 21 August 2018 в 17:46
поделиться
  • 1
    Работал и для меня. спасибо – Marcel Colomb 16 August 2016 в 20:38
  • 2
    Работал, но ему нужно было переустановить его с помощью pip install numpy -I (аргумент capital i указывает на установку при игнорировании текущей установки, которая была перенесена). – Guillaume Chevalier 8 August 2017 в 23:20
  • 3
    Кажется, вам не разрешено делать это mv даже в качестве root на El Capitan .. – BjornW 20 March 2018 в 16:09

обновление numpy до последней версии

pip install numpy --upgrade
74
ответ дан Joshua Owoyemi 21 August 2018 в 17:46
поделиться
  • 1
    Это решает проблему, но ПОЧЕМУ? Эта проблема возникает из-за наличия двух numpy. Как модернизация решает эту проблему ?! – MAZDAK 8 August 2017 в 14:16
  • 2
    Это меня не исправило: Requirement already up-to-date: numpy in /home/ubuntu/miniconda/lib/python3.6/site-packages – Guillaume Chevalier 8 August 2017 в 23:14
  • 3
    Это может решить проблему, если вы импортируете факел, используя свой python по умолчанию, который имеет более старую версию numpy. – Semih Korkmaz 11 September 2017 в 08:12
  • 4
    это работало для меня при попытке импортировать недавно установленную pytorch с import torch – dinosaur 27 November 2017 в 20:46
  • 5
    Это сработало для меня после удаления и переустановки python – Seabass77 17 January 2018 в 22:39

У меня была такая же ошибка при попытке запустить spyder. «RuntimeError: модуль скомпилирован против версии API 0xb, но эта версия numpy равна 0xa». Эта ошибка появилась после того, как я по ошибке изменил версию своего компьютера с помощью numpy (я думал, что я был в Вене).

Это работает для меня:

conda install anaconda

(у меня была конда, но нет anaconda on моя машина), то:

conda update numpy
1
ответ дан Luce Philibert 21 August 2018 в 17:46
поделиться

Сегодня я столкнулся с тем же вопросом. Это оказалось проблемой, когда у меня было установлено несколько пакетов numpy. Более старая версия была установлена ​​в /usr/lib/python2.7, и правильная версия была установлена ​​в /usr/local/lib/python2.7.

Кроме того, у меня был PYTHONPATH=/usr/lib/python2.7/dist-packages:/usr/local/lib/python2.7/dist-packages. PYTHONPATH находил более старую версию numpy до правильной версии, поэтому, когда внутри интерпретатора Python, она импортировала бы более старую версию numpy.

Одна вещь, которая помогла открыть сеанс python, выполнить следующий код :

import numpy as np 
print np.__version__ 
print np.__path__

Это должно сказать вам, какую версию Python использует, и где она установлена.

Чтобы исправить проблему, я изменил PYTHONPATH=/usr/local/lib/python2.7/dist-packages:/usr/lib/python2.7/dist-packages. И я также настраиваю виртуальную среду Python с помощью руководства Hitchiker для Python , в частности раздела под названием «Нижний уровень: virtualenv». Я знаю, что мне нужно было настроить виртуальную среду, но я устал и ленился.

(Обновление)

На всякий случай, когда документы будут перемещены снова, вот соответствующие бит на ...

Создание Виртуальная среда Python

Установите virtualenv через pip:

$ install virtualenv

Проверьте установку:

$ virtualenv --version

Опционально, переменная среды VIRTUALENVWRAPPER_PYTHON изменится версия python по умолчанию, используемая виртуальными средами, например, для использования Python 3:

$ export VIRTUALENVWRAPPER_PYTHON=$(which python3)

. При необходимости установите переменную среды WORKON_HOME, чтобы изменить каталог по умолчанию, в котором созданы виртуальные среды Python, для Пример использования /opt/python_envs:

$ export WORKON_HOME=/opt/python_envs

Создание виртуальной среды для проекта:

$ cd my_project_folder
$ virtualenv my_virtual_env_name

Активировать созданную виртуальную среду. Предположим, вы также установили WORKON_HOME=/opt/python_envs:

$ source $WORKON_HOME/my_virtual_env_name/bin/activate

Установите все пакеты Python, которые требуется вашему проекту, используя один из двух следующих методов.

Способ 1 - Установить с помощью pip из командной строки:

$ pip install python_package_name1
$ pip install python_package_name2

Способ 2 - Установить с помощью файла requests.txt:

$ echo "python_package_name1" >> requests.txt
$ echo "python_package_name2" >> requests.txt
$ pip install -r ./requests.txt

Необязательно, но настоятельно рекомендуется установить virtualenvwrapper. Он содержит полезные команды, облегчающие работу с виртуальными средами Python:

$ pip install virtualenvwrapper
$ source /usr/local/bin/virtualenvwrapper.sh

В Windows установите virtualenvwrapper, используя:

$ pip install virtualenvwrapper-win

Базовое использование virtualenvwrapper Создайте новый виртуальный среда:

$ mkvirtualenv my_virtual_env_name

Список всех виртуальных сред:

$ lsvirtualenv

Активировать виртуальную среду:

$ workon my_virtual_env_name

Удалить виртуальную среду (предостережение! необратимо!):

$ rmvirtualenv my_virtual_env_name

Надеюсь, эта помощь!

3
ответ дан MikeyE 21 August 2018 в 17:46
поделиться
  • 1
    Документ, с которым вы связываетесь, дает ошибку 404. Не могли бы вы обновить ссылку? – user3243242 30 June 2018 в 16:03
  • 2
    @ user3243242 Как пожелаете! :-) – MikeyE 2 July 2018 в 05:11

Вероятно, вы используете Mac по умолчанию (/ usr / bin / python), у которого установлена ​​старая версия numpy, установленная в системных папках. Самый простой способ заставить python работать с opencv - использовать пиво для установки как python, так и opencv в / usr / local и запустить /usr/local/bin/python.

brew install python
brew tap homebrew/science
brew install opencv
5
ответ дан Pat Niemeyer 21 August 2018 в 17:46
поделиться

Это работает для меня:

Мой pip не работает после обновления, поэтому первое, что мне нужно сделать, это исправить его с помощью

sudo gedit /usr/bin/pip

Измените line

from pip import main

-

from pip._internal import main

Затем

 sudo pip install -U numpy
0
ответ дан Paul Chen 21 August 2018 в 17:46
поделиться

У меня такая же проблема с модулем кватерниона. При обновлении модулей с conda версия numpy не добавляется к последней. Если принудительное обновление с помощью команды pip pip install --upgrade numpy + install quaternion module by pip install --user numpy numpy-quaternion, проблема исправлена. Возможно, проблема связана с версией numpy. Здесь результат выполнения:

Python 2.7.14 |Anaconda custom (64-bit)| (default, Oct 15 2017, 03:34:40) [MSC v.1500 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.

>>> import numpy as np
>>> print np.__version__
1.14.3
>>>

(base) C:\Users\jc>pip install --user numpy numpy-quaternion
Requirement already satisfied: numpy in d:\programdata\anaconda2\lib\site-packages (1.14.3)
Collecting numpy-quaternion
  Downloading https://files.pythonhosted.org/packages/3e/73/5720d1d0a95bc2d4af2f7326280172bd255db2e8e56f6fbe81933aa00006/numpy_quaternion-2018.5.10.13.50.12-cp27-cp27m-win_amd64.whl (49kB)
    100% |################################| 51kB 581kB/s
Installing collected packages: numpy-quaternion
Successfully installed numpy-quaternion-2018.5.10.13.50.12

(base) C:\Users\jc>python
Python 2.7.14 |Anaconda custom (64-bit)| (default, Oct 15 2017, 03:34:40) [MSC v.1500 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.

>>> import numpy as np
>>> import quaternion
>>> 
0
ответ дан user9783973 21 August 2018 в 17:46
поделиться

Для тех, кто использует anaconda Python:

conda update anaconda
1
ответ дан YakovK 21 August 2018 в 17:46
поделиться
0
ответ дан PALLAMOLLA SAI 1 November 2018 в 10:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: