Подтвердить что ты не робот

Как я могу обновить NumPy?

Когда я установил OpenCV с помощью Homebrew (brew), у меня возникала такая проблема, когда я запускаю эту команду для тестирования python -c "import cv2":

RuntimeError: module compiled against API version 9 but this version of numpy is 6
Traceback (most recent call last):
  File "<string>", line 1, in <module>
ImportError: numpy.core.multiarray failed to import

Я пытался обновить NumPy, но это сбивает с толку:

>>> import numpy
>>> print numpy.__version__
1.6.1

Когда я запускаю brew для обновления NumPy, у меня возникает такая проблема:

brew install -u numpy
Warning: numpy-1.9.1 already installed

Когда я удалил это:

sudo pip install numpy
Requirement already satisfied (use --upgrade to upgrade): numpy in ./anaconda/lib/python2.7/site-packages

Я следил за этим вопросом и удалил Анаконду из моего Mac.

pip install numpy
Requirement already satisfied (use --upgrade to upgrade): numpy in /Library/Python/2.7/site-packages

Но ничего не изменилось. Как я могу связать версию NumPy с OpenCV?

4b9b3361

Ответ 1

Потому что у нас есть две установки NumPy в системе. Один устанавливается Homebrew, а второй - pip. Таким образом, чтобы решить эту проблему, нам нужно удалить один и использовать установку по умолчанию NumPy от OpenCV.

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

import numpy
print numpy.__path__

и вручную удалите его, используя rm.

Ответ 2

Ошибка, о которой вы упомянули, возникает, когда в вашей системе есть две версии NumPy. Как вы упоминали, импортированная вами версия NumPy по-прежнему не обновляется, поскольку вы пытались обновить ее с помощью pip (она обновит версию, существующую в '/Library/Python/2.7/site-packages').

Однако Python по-прежнему загружает пакеты из '/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/numpy' где '/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/numpy' предустановленные пакеты.

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

Ответ 3

Если у вас уже есть более старая версия NumPy, используйте это:

pip install numpy --upgrade

Если это все еще не работает, попробуйте:

pip install numpy --upgrade --ignore-installed

Ответ 4

К вашему сведению, когда вы используете или импортируете TensorFlow, может произойти похожая ошибка, например (вызванная NumPy):

RuntimeError: module compiled against API version 0xa but this version of numpy is 0x9
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/__init__.py", line 23, in <module>
    from tensorflow.python import *
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/__init__.py", line 60, in <module>
    raise ImportError(msg)
ImportError: Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/__init__.py", line 49, in <module>
    from tensorflow.python import pywrap_tensorflow
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/pywrap_tensorflow.py", line 28, in <module>
    _pywrap_tensorflow = swig_import_helper()
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/pywrap_tensorflow.py", line 24, in swig_import_helper
    _mod = imp.load_module('_pywrap_tensorflow', fp, pathname, description)
ImportError: numpy.core.multiarray failed to import


Error importing tensorflow.  Unless you are using bazel,
you should not try to import tensorflow from its source directory;
please exit the tensorflow source tree, and relaunch your python interpreter
from there.

Я последовал за решением Эльмиры и Дрю, sudo easy_install numpy, и это сработало!

sudo easy_install numpy
Searching for numpy
Best match: numpy 1.11.3
Removing numpy 1.8.2 from easy-install.pth file
Adding numpy 1.11.3 to easy-install.pth file

Using /usr/local/lib/python2.7/dist-packages
Processing dependencies for numpy
Finished processing dependencies for numpy

После этого я мог использовать TensorFlow без ошибок.

Ответ 5

Я попытался сделать sudo pip uninstall numpy вместо этого, потому что rm не работал сначала.

Надеюсь, это поможет.

Удаление, а затем его снова установить.

Ответ 6

Потому что у вас установлено несколько версий NumPy.

Попробуйте pip uninstall numpy и pip list | grep numpy pip list | grep numpy несколько раз, пока вы не увидите вывод из pip list | grep numpy pip list | grep numpy

Затем pip install numpy предоставит вам новейшую версию NumPy.

Ответ 7

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

pip install numpy --upgrade

Ответ 8

Если вы не столкнулись с ошибками разрешения

pip install -U numpy

пытаться:

pip install --user -U numpy

Ответ 9

После установки pytorch я получил похожую ошибку, когда использовал:

import torch

Удаление NumPy не помогло (на самом деле я переименовал NumPy, поэтому вернулся после того, как он не сработал). Следующие команды помогли мне:

sudo pip install numpy --upgrade
sudo easy_install numpy

Ответ 10

Все равно.

   sudo easy_install numpy

My Traceback

Searching for numpy

Best match: numpy 1.13.0

Adding numpy 1.13.0 to easy-install.pth file

Using /Library/Python/2.7/site-packages

Processing dependencies for numpy

Ответ 11

Если вы застряли на машине, где у вас нет доступа с правами root, то лучше иметь дело с пользовательской установкой Python.

Установка Anaconda работала как шарм:

После установки

[bash] $/xxx/devTools/python/anaconda/bin/pip list --format = столбцы | grep numpy

numpy 1.13.3 numpydoc 0.7.0

Ответ 12

Обновить NumPy

Для питона 2

pip install numpy --upgrade

Вам также потребуется обновить таблицы и обновить версию numpy. так,

pip install tables --upgrade

Для Python 3

pip3 install numpy --upgrade

Аналогично, таблицы для python3: -

pip3 install tables --upgrade

Примечание:

Вам нужно проверить, какую версию Python вы используете. pip для Python 2. 7+ или pip3 для Python 3+