ImportError: numpy.core.multiarray gagal diimpor

139

Saya mencoba menjalankan program ini

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()

Tapi saya mengalami masalah dengan numpy, saya menggunakan pyschopy bersama dengan opencv. Masalah yang terus saya dapatkan adalah laporan kesalahan ini:

RuntimeError: modul dikompilasi terhadap API versi 7 tetapi versi numpy ini adalah 6

Traceback (panggilan terakhir terakhir):

File "C: \ Users \ John \ Documents \ EyeTracking \ Programs \ GetImage.py", baris 1, di

import cv2

ImportError: numpy.core.multiarray gagal diimpor

Saya punya numpy-1.6.1-py2.7 di folder psychopy, saya hanya bingung apa yang salah?

Edit (Jawaban yang Dihapus)

Perintah berikut

pip install -U numpy 

membantu memecahkan masalah: could not load numpy.core.multiarray.

Jun
sumber
1
Saya mendapatkan pesan kesalahan yang sama dan saya telah menginstal numpy-1.9.2.
tommy.carstensen
1
Dalam kasus saya, saya menggunakan distribusi Anaconda di Windows, dan menjalankan conda update pythondua kali (sekali untuk memperbarui conda, dan sekali lagi untuk memperbarui python ke 2.7.13) memperbaiki masalah.
Jason O.
Berlari pip install opencv-python==3.4.2.17 numpy==1.14.5berhasil bagi saya
Markus Weber
Saya mendapatkan kesalahan yang sama dengan NumPy 1.16.3, python 3.7 dan macOS terbaru, tingkatkan ke 1.16.4 menyelesaikan masalah.
nngeek

Jawaban:

132

Saya mendapatkan kesalahan yang sama dan dapat mengatasinya dengan memperbarui instalasi numpy saya ke 1.8.0:

pip install -U numpy
David Ketcheson
sumber
1
Saya mendapatkan pesan kesalahan yang sama dan saya telah menginstal numpy-1.9.2.
tommy.carstensen
@ tommy.carstensen Hai, Saya mendapat masalah yang sama, saya mencoba pip install -U numpy, itu mengunduh versi numpy terbaru, dan mengatakan bahwa itu diinstal dengan sukses, tetapi sebenarnya masih versi lama
user824624
Berada dalam kondisi yang sama persis ... Bagi saya masalahnya adalah pemasangan ganda numpy yang dalam versi yang bertentangan dengan pustaka lain dan membayangi versi numpy yang benar yang dipasang oleh conda. Solusi: pip uninstall numpy ... ini menghapus versi numpy yang salah dan menghidupkan kembali versi numpy yang benar ...
roy650
2
Bagi saya, saya perlu menghapus numpy, lalu menginstal numpy. itu berhasil.
jef
26

Dalam hal itu

pip install -U numpy 

tidak berfungsi (bahkan dengan sudo), Anda mungkin ingin memastikan bahwa Anda menggunakan versi numpy yang benar. Saya memiliki masalah "numpy.core.multiarray gagal untuk mengimpor" yang sama, tetapi itu karena saya telah menginstal 1.6 untuk versi Python yang saya gunakan, meskipun saya terus menginstal 1.8 dan menganggapnya diinstal di direktori yang benar.

Saya menemukan versi numpy yang buruk dengan menggunakan perintah berikut di terminal Mac saya:

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

Perintah ini memberi saya versi dan lokasi numpy yang saya gunakan (ternyata 1.6.2). Saya pergi ke lokasi ini dan secara manual menggantinya dengan folder numpy untuk 1.8, yang menyelesaikan masalah "numpy.core.multiarray gagal untuk mengimpor". Semoga seseorang menemukan ini berguna!

Catatan : Untuk perintah, gunakan garis bawah ganda sebelum dan sesudah 'versi' dan 'file'

alexfigtree.dll
sumber
hai, saya menemui masalah yang sama, bisakah Anda menginstruksikan saya cara mengganti folder numpy
user824624
Hai, Anda harus melihat jalur yang diberikan setelah perintah python -c dan menemukannya di komputer Anda. Saya yakin Anda dapat membuka direktori di OSX melalui terminal, tetapi saya melakukannya secara manual dan itu menyelesaikan masalah saya.
alexfigtree
AttributeError: objek 'module' tidak memiliki atribut 'file'
xApple
1
@xApple Tambahkan dunderscores (artinya: garis bawah ganda) sebelum dan sesudah versi dan file
Hamlett
Anda juga dapat mencoba mencopot pemasangan numpy yang salah. Kemudian periksa apakah Anda memiliki versi numpy berbeda yang akan "naik" (seperti yang saya miliki) dan jika perlu - kemudian instal ulang.
roy650
18

Jika Anda menginginkan versi tertentu:

pip install numpy==1.8
ril3y
sumber
1
Jika saya melakukan itu, saya mendapatkan kesalahan dari cl.exe: tidak dapat menautkan program C sederhana
snoob dogg
3
Saya memiliki numpy 1.11, dan saya mendapatkan 'tidak dapat memuat numpy.core.multiarray'. Menginstal versi 1.15.2 seperti yang dinyatakan di bawah memperbaikinya.
Craig S. Anderson
14

Coba sudo pip install numpy --upgrade --ignore-installed.

Ini bekerja di Mac OS 10.11.

Anda harus menutup The 'Rootless' jika shell di atas tidak berfungsi.

Mulai
sumber
Rootless adalah 'Perlindungan Integritas Sistem' di OSX 10.11
Mulai
14

Jika Anda menggunakan python3, perintah berikut memperbaiki masalah di macos.

python3 -m pip install numpy -I

Bharanidharan K.
sumber
1
Ini berhasil tetapi saya menggunakan python -m pip install numpy -I
Ahmad Moussa
7

Anda mungkin perlu mengupgrade pip, ini berfungsi untuk saya

pip install --upgrade pip
pip install -U numpy
TURUI
sumber
7
pip install opencv-python==3.4.2.17 numpy==1.14.5

melakukan pekerjaan untuk saya!

Bendy Latortue
sumber
6

Saya mendapat pesan kesalahan yang sama, setelah mencoba beberapa solusi yang disarankan namun tidak berhasil, saya menemukan bahwa saya perlu menjalankan:

pip uninstall numpy

beberapa kali. Setiap kali beberapa file berbeda ditandai untuk dihapus, dari berbagai versi numpy yang telah terakumulasi di sistem saya.

Setelah tidak ada yang tersisa untuk dicopot, itu masalah

pip install numpy

Semoga ini bisa membantu seseorang!

bio_james
sumber
Itu sangat membantu <3
Atinesh
4

bagi saya kesalahan ini muncul saat menginstal pygrib dengan conda dan mengimpornya.

conda install -c conda-forge numpy

memecahkan masalah.

Oliver Wilken
sumber
ini memecahkan masalah saya ketika saya mendapat kesalahan yang disebutkan selama "import tensorflow"
Mona Jalal
Ini menyelesaikan masalah saya ketika saya menggunakan opencv, Anaconda python harus menggunakan metode ini, pip atau pip3 akan memperburuk keadaan.
penggerebekan
3

Dalam kasus saya, masalah ini adalah karena saya dua instalasi python (2.7 dan 3.5) dan pip menginstal numpy di direktori 3.5 python saja, terlepas dari versi pip mana yang saya gunakan.

Saya memecahkan masalah dengan secara eksplisit menentukan direktori instal target seperti:

pip install --target c:\apps\python-2.7\Lib\site-packages numpy
Vikash Madhow
sumber
3

Saya tidak begitu mengerti kesalahan ini tetapi saya menyelesaikan kesalahan ini dengan di bawah ini.

pip install -U opencv-python

Semoga bermanfaat!

Saeed
sumber
3

Saya mendapatkan kesalahan yang sama dan masalah diselesaikan dengan memperbarui instalasi numpy saya dari 1.7.1 ke 1.12.1

pip install -U numpy

Berikut ini adalah urutan cmd saya ketika terjadi kesalahan, sedikit berbeda dari yang di atas:

$ 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
Pengendara 44
sumber
2

Setelah mengalami mimpi buruk menggunakan pip install -U numpy beberapa bulan lalu, saya menyerah. Saya telah menginstal CV2 dan opencv tanpa hasil.

Saya menggunakan numpy ver 1.9.1 di python34 dan upgrade terus terhenti di 1.9.

Jadi saya pergi ke https://pypi.python.org/pypi/numpy dan menemukan versi numpy terbaru untuk python3.4 saya.

Saya mengunduh file .whl dan menyalinnya ke folder yang berisi instalasi python saya, C: \ Python34, dalam kasus saya.

Saya kemudian menjalankan pip intall pada nama file dan sekarang saya dapat mengimpor masalah cv2 gratis.

Pastikan Anda menutup python sebelum Anda mulai, jelas tapi penting

Stephen O
sumber
2

Itu berhasil untuk saya. Jadi Anda dapat mencoba mengikuti perintah

$ pip install numpy -I
Mahfujur Rahman
sumber
2

Dalam kasus saya, menginstal dari apt memecahkan masalah saya.

Anda dapat mencoba menghapusnya dari pip dan menginstal dari apt (jika Anda menggunakan ubuntu dll.)

pip3 uninstall numpy
sudo apt-get install python3-numpy
Fakturk
sumber
1

Saya mengalami kesalahan yang sama saat saya menggunakan versi numpy yang disarankan oleh requirement.txt di repo. Ketika saya mencoba untuk 'mengimpor panda sebagai pd', kesalahan ini terjadi. Kemudian solusinya adalah meningkatkan versi numpy ke 1.15.2 karena versi yang disarankan dalam persyaratan tidak cocok dengan panda. Saya mencopot pemasangan versi numpy yang ada dengan pip dan memasang ulang versi baru.

pip install numpy==1.15.2 

Semoga ini bisa membantu seseorang

shan89
sumber
1

Saya memiliki masalah yang sama, dan inilah cara memecahkannya dalam kasus saya.

Saya mencoba pip install -U numpytetapi tidak meningkatkan numpy, tetapi conda installberhasil untuk saya

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%
Alat pemecah buah keras
sumber
1

Saya dapat menyelesaikan masalah dengan memperbarui python saya menjadi 3.8. Saya menggunakan Macbook Air dengan Catalina. Masalahnya dimulai pada saya setelah memperbarui TensorFlow. Setelah memperbaruinya, kesalahan tidak hilang setelah saya menghapus dan menginstal numpy beberapa kali.

Akhirnya saya download paket python3.8 dari website python dan menginstalnya. Kemudian saya menginstal numpy dan berhasil.

R Nanthak
sumber
0

Kesalahan yang sama datang untuk saya. Masalahnya adalah Anda mungkin telah membuat file bernama numpy.py. File ini mungkin bertepatan dengan perpustakaan numpy. Jadi, hapus file numpy.py itu dan masalahnya teratasi.

Manoj Guha
sumber
0

Saya mengalami kesalahan yang sama setelah menginstal python dan opencv di drive D: saya (C: berjalan pada SSD). Masalahnya sepertinya jalur eksekusi saya berada di dalam folder numpy. Anda dapat memeriksa apakah itu masalahnya dengan kode ini:

import numpy
numpy.version.version

Jika itu mengambil kesalahan apa pun yang terkait dengan jalur eksekusi, jalankan kode asli Anda dari tempat lain. Itu memecahkan kesalahan numpy.core.multiarray tidak dapat memuat untuk saya

egeres
sumber
0

Ini membantu saya

sudo pip3 install --upgrade --target=/home/<username>/.local/lib/python3.6/site-packages numpy
Sahil Parekh
sumber
0

Bagi saya itu adalah dua bagian. Pertama:

pip uninstall numpy

Kemudian @Oli Blum menjawab (terima kasih):

conda install -c conda-forge numpy

Itu berhasil bagi saya

Constanza Garcia
sumber
0

hapus instalan numpy yang ada dan instal opencv-python akan menyelesaikan masalah

laxman kishore
sumber
0

Folder Tilde

Dalam acara pip uninstall numpydan penginstalan ulang Numpy tidak bekerja. Tinjau folder paket situs Anda untuk sub-folder yang diawali dengan tilde ~

Folder-folder ini berhubungan dengan instalasi pip yang rusak dan instalasi dibatalkan di tengah jalan. Folder tilde hanya dimaksudkan sebagai folder tmp tetapi akhirnya menjadi permanen. Dalam kasus saya, ada file bernama ~ mpy yang merupakan folder Numpy warisan yang rusak. Hal ini menyebabkan masalah kompatibilitas dan ImportErrors.

Folder yang rusak ini dapat dengan aman dihapus, untuk lebih jelasnya lihat jawaban ini

EQNX
sumber
0

Saya mendapat kesalahan yang sama di lingkungan conda, hanya enam + tahun kemudian. Tanggapan lain sangat membantu, dan akhirnya saya melacaknya ke masalah ini:

> 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

Masalahnya adalah bahwa 'numpy' adalah versi yang berbeda dari 'numpy-base'. Saya menyelesaikan ini dengan:

> conda install numpy-base=1.14.5

jadi keduanya cocok satu sama lain.

Lucian
sumber
-1

Menemukan ini ketika mencoba mengimpor Pytorch. Mengatasinya dengan menghapus atau menghapus numpy berulang kali hingga tidak ada versi yang tersisa di Ubuntu saya dan menginstal versi terbaru. Dalam kasus saya, pip ditemuiAccess is denied kesalahan izin sepanjang waktu mungkin karena konflik dengan conda.

Lari sudo pip uninstall numpy. Jika menolak untuk menghapus paket dari a <location>(pastikan untuk menjadikannya sebagai lokasi dari paket tertentu itu, tidak semua paket - ini tidak dapat diubah), jalankan sudo rm -r <location>. Ulangi di atas sampai perintah pertama tidak melakukan apa-apa dan import numpytidak dapat menemukan paket di dalam shell Python.

Instal numpy menggunakan pip.

m3h0w
sumber