ImportError: не удалось импортировать numpy.core.multiarray


135

Я пытаюсь запустить эту программу

import cv2
import time

cv.NamedWindow("camera", 1)

capture = cv.CaptureFromCAM(0)

while True:
    img = cv.QueryFrame(capture)
    cv.ShowImage("camera", img)
    if cv.WaitKey(10) == 27:
        break
cv.DestroyAllWindows()

Но у меня проблема с numpy, я использую pyschopy вместе с opencv. Проблема, которую я продолжаю получать, - это сообщение об ошибке:

RuntimeError: модуль скомпилирован для API версии 7, но эта версия numpy 6

Traceback (последний вызов был последним):

Файл "C: \ Users \ John \ Documents \ EyeTracking \ Programs \ GetImage.py", строка 1, в

import cv2

ImportError: не удалось импортировать numpy.core.multiarray

У меня в папке psychopy есть numpy-1.6.1-py2.7, я просто не понимаю, что не так?

Редактировать (удаленный ответ)

Следующая команда

pip install -U numpy 

помогает решить проблему: could not load numpy.core.multiarray.


1
Я получаю то же сообщение об ошибке, и у меня установлена ​​numpy-1.9.2.
tommy.carstensen

1
В моем случае я использовал дистрибутив Anaconda в Windows и запустил его conda update pythonдва раза (один раз для обновления conda и еще раз для обновления python до 2.7.13).
Джейсон О.

Бег pip install opencv-python==3.4.2.17 numpy==1.14.5сработал для меня
Маркус Вебер

Я получаю ту же ошибку с NumPy 1.16.3, python 3.7 и последними macOS, обновление до 1.16.4 решает проблему.
nngeek

Ответы:


130

Я получал ту же ошибку и смог ее исправить, обновив мою установку numpy до версии 1.8.0:

pip install -U numpy

Я получаю то же сообщение об ошибке, и у меня установлена ​​numpy-1.9.2.
tommy.carstensen

@ tommy.carstensen Привет, у меня та же проблема, я попытался установить pip -U numpy, он скачал последнюю версию numpy и сказал, что она установлена ​​успешно, но на самом деле все еще старая версия
user824624

Был в точно таком же состоянии ... Для меня проблема заключалась в двойной установке numpy, которая находилась в конфликтной версии с другими библиотеками, и это была тень на правильную версию numpy, установленную conda. Решение: pip uninstall numpy ... это устранило ошибочную версию numpy и вернуло верную версию numpy к жизни ...
roy650

1
Для меня мне нужно было удалить NumPy, а затем установить NUMPY. это сработало.
Джеф

24

В том случае, если

pip install -U numpy 

не работает (даже с sudo), вы можете убедиться, что используете правильную версию numpy. У меня была та же проблема «numpy.core.multiarray не удалось импортировать», но это было потому, что я установил 1.6 для используемой версии Python, хотя я продолжал устанавливать 1.8 и предполагал, что она устанавливается в нужном каталоге.

Я нашел неверную версию с помощью следующей команды в моем терминале Mac:

python -c "import numpy;print numpy.__version__;print numpy.__file__";

Эта команда дала мне версию и расположение numpy, который я использовал (оказалось, что это был 1.6.2). Я пошел в это место и вручную заменил его папкой numpy для 1.8, что решило мою проблему «numpy.core.multiarray не удалось импортировать». Надеюсь, кто-то найдет это полезным!

Примечание : для команды используйте двойное подчеркивание до и после 'version' и 'file'


Привет, я встретил ту же проблему, не могли бы вы
поучить

Привет, тебе нужно посмотреть путь, указанный после команды python -c, и найти его на своем компьютере. Я уверен, что вы можете запустить каталог в OSX через терминал, но я сделал это вручную, и это решило мою проблему.
alexfigtree

AttributeError: у объекта 'module' нет атрибута 'file'
xApple

1
@xApple Добавить dunderscores (это означает: двойное подчеркивание) до и после версий и файла
Hamlett

Вы также можете просто попробовать удалить неисправный NumPy. Затем проверьте, есть ли у вас другая версия numpy, которая будет «подниматься» (как у меня), и при необходимости - переустановите ее.
roy650

17

Если вы хотите конкретную версию:

pip install numpy==1.8

Если я это делаю, я получаю сообщение об ошибке от cl.exe: не могу связать простую программу на C
snoob dogg

2
У меня numpy 1.11, и я получил сообщение «не могу загрузить numpy.core.multiarray». Установка версии 1.15.2, как указано ниже, исправила ее.
Крейг С. Андерсон

14

Попробуй sudo pip install numpy --upgrade --ignore-installed.

Работает в Mac OS 10.11.

Вы должны закрыть «Rootless», если вышеуказанная оболочка не работает.


Rootless - это «Защита целостности системы» в OSX 10.11
Startry


7

вам может понадобиться обновить пип, у меня работает

pip install --upgrade pip
pip install -U numpy


6

У меня было то же сообщение об ошибке, после попытки некоторых из предложенных решений безуспешно, я обнаружил, что мне нужно запустить:

pip uninstall numpy

несколько раз. Каждый раз несколько разных файлов были помечены для удаления из разных версий numpy, скопившихся в моей системе.

Когда нечего было удалять, это был вопрос

pip install numpy

Надеюсь, это поможет кому-то!


Это было очень полезно <3
Атинеш

4

для меня эта ошибка возникла при установке pygrib с conda и его импорте.

conda install -c conda-forge numpy

решил проблему.


это решило проблему для меня, когда я получил упомянутую ошибку во время «импорта тензорного потока»
Мона Джалал

Это решило мою проблему, когда я использовал opencv, Anaconda python должен использовать этот метод, pip или pip3 сделают вещи еще хуже.
raidsan

3

В моем случае эта проблема была из-за того, что я установил две версии python (2.7 и 3.5), а pip устанавливал numpy только в каталоге python 3.5, независимо от того, какую версию pip я использовал.

Я решил проблему, явно указав целевой каталог установки следующим образом:

pip install --target c:\apps\python-2.7\Lib\site-packages numpy

3

Я не очень понимаю эту ошибку, но я решил эту ошибку с помощью ниже.

pip install -U opencv-python

Надеюсь, это было полезно!


3

В моем случае установка из apt решила мою проблему.

Вы можете попробовать удалить его из pip и установить из apt (если вы используете Ubuntu и т. Д.)

pip3 uninstall numpy
sudo apt-get install python3-numpy

3

Я получил ту же ошибку, и проблема была решена путем обновления моей numpy установки с 1.7.1 до 1.12.1

pip install -U numpy

Следующее было моей последовательностью cmd, когда произошла ошибка, немного отличающаяся от вышеупомянутой:

$ python

Python 2.7.12 |Anaconda 4.2.0 (x86_64)| (default, Jul  2 2016, 17:43:17) 

[GCC 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.11.00)] on darwin

Type "help", "copyright", "credits" or "license" for more information.

Anaconda is brought to you by Continuum Analytics.

Please check out: http://continuum.io/thanks and https://anaconda.org

>>> import cv2

>>> import numpy as np

>>> from matplotlib import pyplot as plt

2

После кошмара с использованием pip install -U numpy несколько месяцев назад я сдался. Я прошел установку CV2 и OpenCV без успеха.

Я использовал numpy ver 1.9.1 на python34, и обновление только продолжало останавливаться на 1.9.

Поэтому я зашел на https://pypi.python.org/pypi/numpy и обнаружил последнюю версию numpy для моего python3.4.

Я скачал файл .whl и скопировал его в папку с моей установкой Python, C: \ Python34, в моем случае.

Затем я запустил pip intall для имени файла и теперь могу без проблем импортировать cv2.

Убедитесь, что вы закрыли Python, прежде чем начать, очевидно, но важно



1

У меня возникла та же ошибка, что и при использовании единой версии, предложенной в файле require.txt в репозитории. Когда я попытался «импортировать панд как pd», произошла эта ошибка. Тогда решением было обновить версию numpy до 1.15.2, так как предложенная в требованиях версия не соответствовала пандам. Я удалил существующую версию с помощью pip и заново установил новую версию.

pip install numpy==1.15.2 

Надеюсь, это поможет кому-то


1

Я смог решить проблему, обновив свой питон до 3.8. Я использую Macbook Air с Каталиной. Проблема началась для меня после обновления TensorFlow. После его обновления ошибка не исчезает после того, как я несколько раз удалил и установил numpy.

Наконец, я скачал пакет python3.8 с сайта python и установил. Затем я установил NumPy и это сработало.


0

Такая же ошибка пришла для меня. Проблема в том, что вы могли создать файл с именем numpy.py. Этот файл может совпадать с библиотекой numpy. Итак, удалите этот файл numpy.py, и проблема будет решена.


0

У меня была такая же ошибка после установки python и opencv на моем диске D: (C: работает на SSD). Проблема, казалось, заключалась в том, что мой путь выполнения находился внутри пустой папки. Вы можете проверить, если это проблема с этим кодом:

import numpy
numpy.version.version

В случае, если он обнаружит любую ошибку, связанную с путем выполнения, запустите исходный код из другого места. Это решило не удалось загрузить ошибку numpy.core.multiarray для меня



0

Для меня это было две части. Первый:

pip uninstall numpy

Тогда @Oli Blum ответит (спасибо):

conda install -c conda-forge numpy

Это помогло мне


0

Обнаружено это при попытке импортировать Pytorch. Решил это, несколько раз удаляя numpy, пока на моем Ubuntu не осталось ни одной версии, и установил самую новую версию.

Беги sudo pip uninstall numpy. Если он отказывается удалить пакет из a <location>, запустите sudo rm -r <location>. Повторяйте выше, пока первая команда ничего не сделает и import numpyне сможет найти пакет в оболочке Python.

Установите numpy используя pip.



0

У меня была такая же проблема, и вот как она решается в моем случае.

Я пытался, pip install -U numpyно он не обновлял NumPy, но conda installработал на меня

ImportError: numpy.core.multiarray failed to import
admin@MacBook-Air$ pip install -U numpy
Requirement already up-to-date: numpy in /Users/admin/anaconda/lib/python2.7/site-packages
admin@MacBook-Air$ python
Python 2.7.12 |Anaconda 2.4.0 (x86_64)| (default, Jul  2 2016, 17:43:17) 
[GCC 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.11.00)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
Anaconda is brought to you by Continuum Analytics.
Please check out: http://continuum.io/thanks and https://anaconda.org
>>> import numpy
numpy.version.version
>>> numpy.version.version
'1.7.1'
>>> exit
Use exit() or Ctrl-D (i.e. EOF) to exit
>>> 
admin@MacBook-Air$ 
admin@MacBook-Air$ conda install numpy
Fetching package metadata .......
Solving package specifications: ..........

Package plan for installation in environment /Users/admin/anaconda:

The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    scikit-learn-0.18.1        |      np111py27_0         4.9 MB

The following packages will be UPDATED:

    numexpr:      2.3.0-np17py27_0  --> 2.6.1-np111py27_1 
    numpy:        1.7.1-py27_2      --> 1.11.2-py27_0     
    scikit-learn: 0.14.1-np17py27_1 --> 0.18.1-np111py27_0
    scipy:        0.13.2-np17py27_1 --> 0.18.1-np111py27_0

Proceed ([y]/n)? y

Fetching packages ...
scikit-learn-0 100% |#################################################################| Time: 0:00:16 312.60 kB/s
Extracting packages ...
[      COMPLETE      ]|####################################################################################| 100%
Unlinking packages ...
[      COMPLETE      ]|####################################################################################| 100%
Linking packages ...
[      COMPLETE      ]|####################################################################################| 100%

0

Папки тильды

В случае pip uninstall numpyпереустановки Numpy и не работает. Просмотрите папку вашего сайта-пакета на наличие подпапок, начинающихся с тильды ~

Эти папки относятся к поврежденным установкам pip, и установка была прервана частично. Папки тильды только когда-то должны были быть папками tmp, но в итоге стали постоянными. В моем случае был файл ~ mpy, который представлял собой искаженную устаревшую папку Numpy. Это привело к проблемам совместимости и ImportErrors.

Эти искаженные папки можно безопасно удалить, подробности см. В этом ответе.


0

Я получил эту же ошибку в среде conda, только спустя шесть с лишним лет. Другие ответы были полезны, и в конце концов я отследил это до этой проблемы:

> conda list numpy
# packages in environment at [Anaconda3]:
#
# Name                    Version                   Build  Channel
numpy                     1.14.5                   pypi_0    pypi
numpy-base                1.18.1           py36hc3f5095_1
numpydoc                  0.9.1                    pypi_0    pypi

Проблема заключалась в том, что «numpy» отличалась от «numpy-base». Я решил это с помощью:

> conda install numpy-base=1.14.5

так что двое из них соответствовали друг другу.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.