Numpy: Pengimporan modul ekstensi numpy multiarray gagal

Dibuat pada 20 Jun 2017  ·  39Komentar  ·  Sumber: numpy/numpy

Saya mencoba menginstal numpy 1.13.0. Mesin saya adalah Windows 7, dan penginstalan Python saya adalah 64-bit Python 3.6.0. Saya sebelumnya memiliki versi lama numpy yang diinstal (dari situs Christoph Gohlke) tetapi saya menghapus instalannya. Saya juga memiliki beberapa instalasi Anaconda, tetapi saya juga menghapusnya. Namun, ketika saya mencoba mengimpor numpy, saya mendapatkan kesalahan di atas:

PS 11:46 {00:04.053} D:\experiments                                                                                                                 
>pip install --no-cache numpy                                                                                                                       
Collecting numpy                                                                                                                                    
  Downloading numpy-1.13.0-cp36-none-win_amd64.whl (7.8MB)                                                                                          
    100% |████████████████████████████████| 7.8MB 541kB/s                                                                                           
Installing collected packages: numpy                                                                                                                
Successfully installed numpy-1.13.0                                                                                                                 
PS 11:46 {00:18.096} D:\experiments                                                                                                                 
>python                                                                                                                                             
Python 3.6.0 (v3.6.0:41df79263a11, Dec 23 2016, 08:06:12) [MSC v.1900 64 bit (AMD64)] on win32                                                      
Type "help", "copyright", "credits" or "license" for more information.                                                                              
>>> import numpy                                                                                                                                    
Traceback (most recent call last):                                                                                                                  
  File "C:\Users\UK03306\AppData\Local\Programs\Python\Python36\lib\site-packages\numpy\core\__init__.py", line 16, in <module>                     
    from . import multiarray                                                                                                                        
ImportError: DLL load failed: The specified procedure could not be found.                                                                           

During handling of the above exception, another exception occurred:                                                                                 

Traceback (most recent call last):                                                                                                                  
  File "<stdin>", line 1, in <module>                                                                                                               
  File "C:\Users\UK03306\AppData\Local\Programs\Python\Python36\lib\site-packages\numpy\__init__.py", line 142, in <module>                         
    from . import add_newdocs                                                                                                                       
  File "C:\Users\UK03306\AppData\Local\Programs\Python\Python36\lib\site-packages\numpy\add_newdocs.py", line 13, in <module>                       
    from numpy.lib import add_newdoc                                                                                                                
  File "C:\Users\UK03306\AppData\Local\Programs\Python\Python36\lib\site-packages\numpy\lib\__init__.py", line 8, in <module>                       
    from .type_check import *                                                                                                                       
  File "C:\Users\UK03306\AppData\Local\Programs\Python\Python36\lib\site-packages\numpy\lib\type_check.py", line 11, in <module>                    
    import numpy.core.numeric as _nx                                                                                                                
  File "C:\Users\UK03306\AppData\Local\Programs\Python\Python36\lib\site-packages\numpy\core\__init__.py", line 26, in <module>                     
    raise ImportError(msg)                                                                                                                          
ImportError:                                                                                                                                        
Importing the multiarray numpy extension module failed.  Most                                                                                       
likely you are trying to import a failed build of numpy.                                                                                            
If you're working with a numpy git repo, try `git clean -xdf` (removes all                                                                          
files not under version control).  Otherwise reinstall numpy.                                                                                       

Saya telah memeriksa setiap salinan Python lainnya di PC saya dan tidak ada yang terinstal numpy. Saya benar-benar tidak ingin menghapus dan menginstal ulang seluruh instalasi Python saya, karena ada banyak paket yang diinstal yang harus saya instal ulang. Tak satu pun dari paket lain, sejauh yang saya tahu, cenderung memengaruhi numpy (atau jika mungkin, mereka tetap menggunakan versi terbaru).

Opsi apa yang saya miliki untuk mencari tahu apa yang salah di sini sebelum saya harus menghapus setiap instalasi Python di mesin saya dan melakukan instal ulang penuh?

00 - Bug

Komentar yang paling membantu

Windows 10, Python 3.6, diinstal menggunakan pip dan ketika saya mengimpornya, itu memberi saya kesalahan ini.

``
C: \ Users \ Kevin> python
Python 3.6.0 (v3.6.0: 41df79263a11, 23 Des 2016, 07:18:10) [MSC v.1900 32 bit
(Intel)] pada win32
Ketik "bantuan", "hak cipta", "kredit" atau "lisensi" untuk informasi lebih lanjut.

impor numpy
Traceback (panggilan terakhir terakhir):
File "D: \ Python3.6 \ libsite-packages \ numpy \ core__init __. Py", baris 16, di

dari. import multiarray
ImportError: Beban DLL gagal: Prosedur yang ditentukan tidak dapat ditemukan.

Selama menangani pengecualian di atas, pengecualian lain terjadi:

Traceback (panggilan terakhir terakhir):
File "", baris 1, masuk
File "D: \ Python3.6 \ libsite-packages \ numpy__init __. Py", baris 142, di

dari. impor add_newdocs
File "D: \ Python3.6 \ libsite-packages \ numpy \ add_newdocs.py", baris 13, di

dari numpy.lib impor add_newdoc
File "D: \ Python3.6 \ libsite-packages \ numpy \ lib__init __. Py", baris 8, di

dari .type_check import *
File "D: \ Python3.6 \ libsite-packages \ numpy \ lib \ type_check.py", baris 11, di

impor numpy.core.numeric sebagai _nx
File "D: \ Python3.6 \ libsite-packages \ numpy \ core__init __. Py", baris 26, di

naikkan ImportError (msg)
ImportError:
Pengimporan modul ekstensi numpy multiarray gagal. Paling
kemungkinan Anda mencoba mengimpor build numpy yang gagal.
Jika Anda bekerja dengan repo git numpy, coba git clean -xdf (hapus semua
file tidak di bawah kendali versi). Jika tidak, instal ulang numpy.

Kesalahan asli adalah: Beban DLL gagal: Prosedur yang ditentukan tidak dapat dilakukan
ditemukan.

Semua 39 komentar

Tidak, seharusnya tidak terpengaruh oleh paket lain. Saya berasumsi bahwa Anda telah memeriksa tidak ada yang aneh di PATH atau PYTHONPATH ? Dan ketika Anda mengatakan "mencopotnya", apakah Anda membuka site-packages dan melakukan (setara dengan Windows) rm -rf numpy ? Mungkin beberapa sisa dari paket @cgohlke mungkin.

@tokopedia

Saya melakukan pip install numpy . Tidak ada apa pun di paket situs yang namanya "numpy" setelah melakukannya. Saya bertanya-tanya tentang kemungkinan itu karena saya sebelumnya telah menggunakan build @cgohlke , tetapi uninstal tampaknya terjadi dengan bersih.

Tidak ada yang jelas yang bisa saya lihat di PATH dan saya tidak punya PYTHONPATH .

Setelah sedikit lebih bermain dengan ctypes pasti ada sesuatu yang salah dengan multiarray :

>>> ctypes.cdll.LoadLibrary(r'C:\users\uk03306\appdata\local\programs\python\python36\lib\site-packages\numpy\core\multiarray.cp36-win_amd64.pyd')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Users\UK03306\AppData\Local\Programs\Python\Python36\lib\ctypes\__init__.py", line 422, in LoadLibrary
    return self._dlltype(name)
  File "C:\Users\UK03306\AppData\Local\Programs\Python\Python36\lib\ctypes\__init__.py", line 344, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: [WinError 126] The specified module could not be found
>>> ctypes.cdll.LoadLibrary(r'C:\users\uk03306\appdata\local\programs\python\python36\lib\site-packages\numpy\core\umath.cp36-win_amd64.pyd')
<CDLL 'C:\users\uk03306\appdata\local\programs\python\python36\lib\site-packages\numpy\core\umath.cp36-win_amd64.pyd', handle 7fecc110000 at 0x2789eb8>
>>>

Melakukan penggalian dengan dependency walker, sepertinya beberapa file mungkin gagal dimuat (seperti API-MS-WIN-CORE-WINRT-ERROR-L1-1-0.DLL ).

Pencarian di internet menunjukkan bahwa ini terkait dengan pustaka khusus Windows 8. Saya berasumsi ini telah ditautkan secara tidak sengaja, dan numpy tidak mendukung Windows 7?

Lihat https://github.com/dotnet/coreclr/issues/65 dan https://answers.microsoft.com/en-us/windows/forum/windows_10-files/missing-api-ms-win-core-dlls / d99d1368-0f92-43db-bbdb-7d080f1f96e9 untuk beberapa tautan yang saya temukan saat meneliti masalah ini.

Sebagai perbaikan jangka pendek, saya telah kembali ke numpy 1.12.1

Saya baru saja memeriksa dengan rekan kerja. Dia memiliki build 32-bit dan tampaknya berfungsi dengan baik. Jadi ini mungkin sesuatu yang spesifik untuk biner 64-bit.

Ini mungkin masalah Python 29943 . Ekstensi yang dibangun dengan Python 3.6.1 tidak akan berfungsi pada 3.6.0.

@cgohlke - saran bagus. Dari bug itu, kita harus membangun kembali roda numpy dengan Python 3.6.0. Appveyor default ke 3.6.1: https://www.appveyor.com/docs/build-environment/#python

Bug itu seharusnya hanya mempengaruhi paket yang mereferensikan PySlices_GetIndicesEx , dan dapat didiagnosis dengan memeriksa apakah biner yang dihasilkan merujuk ke PySlice_AdjustIndices . Saya pikir numpy tidak terpengaruh.

Saya baru saja menguji di PC rumah saya, yang memiliki Python 3.6.1, dan numpy 1.13 berfungsi dengan baik di sana. Namun, PC rumah saya juga Windows 10, dan memiliki banyak perbedaan lain, jadi ini bukan pengujian yang sempurna. Saya akan mengupgrade PC kerja saya ke 3.6.1 besok, dan mengujinya di sana.

Di mesin uji saya, saya menginstal numpy di virtualenv untuk Python.org 3.6.0, mengalami error, lalu menginstal Python 3.6.1 dan tidak mengalami error.

Saya dapat mengonfirmasi bahwa peningkatan ke 3.6.1 memperbaiki masalah saya pada mesin yang awalnya bermasalah. Secara pribadi, saya setuju masalah ini ditutup dengan "upgrade ke 3.6.1" sebagai resolusinya, tetapi saya akan menyerahkannya kepada Anda untuk menutupnya jika Anda lebih suka memperbaiki biner untuk mendukung 3.6.0 .

@ matthew-brett Saya akan segera membuat 1.13.1. Apakah Anda akan melakukan modifikasi pada build?

@charris - Saya rasa kita harus membangun di 3.6.0. Saya rasa tidak ada cara untuk melakukan itu dengan Appveyor dan stok Pythons, jadi kita perlu menggunakan Conda.

Saya sedang bereksperimen dengan membangun openblas kali ini, tetapi mungkin perlu sedikit waktu untuk menyelesaikannya - katakanlah seminggu?

Adakah yang bisa memastikan apakah roda Windows yang jelek dan jelek berisi referensi ke simbol PySlice_AdjustIndices ? Jika mereka melakukannya maka masalahnya tidak terbatas pada Windows, jadi kita harus berhati-hati untuk itu, tetapi setidaknya itu diketahui dan akan diperbaiki di 3.6.2 yang akan segera keluar. Jika tidak, maka sesuatu yang lain sedang terjadi, mungkin kerusakan 3.6.1 abi yang sebelumnya tidak diketahui sehingga kami harus segera melaporkan ke upstream.

Cc @zooba

Adakah yang bisa memastikan apakah roda Windows yang jelek dan jelek berisi referensi ke simbol PySlice_AdjustIndices ?

Ya, multiarray.cp36-win_amd64.pyd referensi PySlice_AdjustIndices dan PySlice_Unpack .

ya, saya bersumpah saya telah mengaudit numpy untuk melihat apakah itu terpengaruh oleh bpo-29943, dan menyimpulkan bahwa itu tidak benar. Namun memang, sepertinya ada orang bernama "njsmith" yang menambahkan panggilan tersebut tahun lalu: https://github.com/numpy/numpy/pull/7215
Maaf atas kebingungannya, tidak yakin apa yang saya pikirkan di sana.

Windows 10, Python 3.6, diinstal menggunakan pip dan ketika saya mengimpornya, itu memberi saya kesalahan ini.

``
C: \ Users \ Kevin> python
Python 3.6.0 (v3.6.0: 41df79263a11, 23 Des 2016, 07:18:10) [MSC v.1900 32 bit
(Intel)] pada win32
Ketik "bantuan", "hak cipta", "kredit" atau "lisensi" untuk informasi lebih lanjut.

impor numpy
Traceback (panggilan terakhir terakhir):
File "D: \ Python3.6 \ libsite-packages \ numpy \ core__init __. Py", baris 16, di

dari. import multiarray
ImportError: Beban DLL gagal: Prosedur yang ditentukan tidak dapat ditemukan.

Selama menangani pengecualian di atas, pengecualian lain terjadi:

Traceback (panggilan terakhir terakhir):
File "", baris 1, masuk
File "D: \ Python3.6 \ libsite-packages \ numpy__init __. Py", baris 142, di

dari. impor add_newdocs
File "D: \ Python3.6 \ libsite-packages \ numpy \ add_newdocs.py", baris 13, di

dari numpy.lib impor add_newdoc
File "D: \ Python3.6 \ libsite-packages \ numpy \ lib__init __. Py", baris 8, di

dari .type_check import *
File "D: \ Python3.6 \ libsite-packages \ numpy \ lib \ type_check.py", baris 11, di

impor numpy.core.numeric sebagai _nx
File "D: \ Python3.6 \ libsite-packages \ numpy \ core__init __. Py", baris 26, di

naikkan ImportError (msg)
ImportError:
Pengimporan modul ekstensi numpy multiarray gagal. Paling
kemungkinan Anda mencoba mengimpor build numpy yang gagal.
Jika Anda bekerja dengan repo git numpy, coba git clean -xdf (hapus semua
file tidak di bawah kendali versi). Jika tidak, instal ulang numpy.

Kesalahan asli adalah: Beban DLL gagal: Prosedur yang ditentukan tidak dapat dilakukan
ditemukan.

@ matthew-brett Ada berita tentang hal ini? Saya ingin mengeluarkan 1.13.1 minggu ini jika memungkinkan.

@njsmith Python 3.6.2 akan keluar Jumat ini. Apakah itu memperbaiki masalah dan apakah masih sesuai jadwal?

EDIT: Jika kita membangun dengan Python 3.6.0 atau 3.6.2, apakah roda akan tetap berfungsi dengan 3.6.1?

Sepertinya kita menghindari peluru itu dengan 1.12.1, tapi hanya dalam beberapa hari ...

Ya, membangun dengan 3.6.0 atau 3.6.2 seharusnya aman, dalam artian biner yang dihasilkan akan bekerja pada semua sistem 3.6.x.

Jika perlu, Anda juga dapat menggunakan peretasan preprocessor untuk mengatasi masalah di 3.6.1. Saya pikir mantera yang tepat adalah yang ini: https://github.com/pandas-dev/pandas/blob/24719672685027710cf432023a7fbc3222b0b05c/pandas/_libs/src/compat_helper.h#L29 -L33

Baru saja mengerjakan kompilasi OpenBLAS mingw, dengan @carlkl . Beberapa kemajuan, tetapi tidak bisa berjanji untuk menyelesaikannya dalam beberapa hari ke depan. Gunakan peretasan preprocessor untuk saat ini?

@ matthew-brett Jika 3.6.2 keluar pada hari Jumat dan tersedia di appveyor segera setelah itu, saya akan segera pergi ke sana. Karena penasaran, apa yang digunakan numpy on window saat ini?

Kami menggunakan ATLAS saat ini, tetapi kinerjanya sangat buruk. Akan sangat baik untuk dapat menggunakan OpenBLAS, untuk kinerja dan konsistensi dengan versi Linux.

Saya tidak yakin berapa lama waktu yang dibutuhkan Appveyor sebelum memutakhirkan Python 3.6 ke 3.6.2.

Masalah yang sama, numpy v1.13.1 dan dan python 3.6.1 berfungsi selama beberapa bulan, sekarang gagal. Ini didasarkan pada instalasi conda menggunakan jendela anaconda navigator. Mei dan Juni 2017 semua kode berjalan dengan baik, kemudian Juli dengan pembaruan dan python 3.6.2 "import numpy" tidak berfungsi lagi.

Beberapa investigasi lebih lanjut (hanya berdasarkan numpy dan python 3.6.2 mengarah ke
C: \ Anaconda3 \ envs \ tensorflow-cpu \ Libsite-paket \ numpy \ coremultiarray.cp36-win_amd64.pyd
(dikompilasi python DLL) dari 7/7/2017 yang memuat
C: \ Windows \ System32 \ mkl_intel_thread.dll (v2009)
C: \ Windows \ System32 \ mkl_core.dll (v2009)
C: \ Windows \ System32 \ libiomp5md.dll (v2009)

sekarang masalahnya adalah, ada beberapa versi untuk masing-masing DLL (neraka DLL)
semua tanggal, versi, ukuran file yang berbeda. Pada dasarnya Anaconda Navigator atau Spyder atau python yang diinstal melalui lingkungan yang berbeda tidak memuat versi DLL yang benar.


mkl_intel_thread.dll
C: \ Anaconda3 \ Library \ bin \ mkl_intel_thread.dll (Oktober 2016)
C: \ Anaconda3 \ pkgs \ mkl-2017.0.3-0 \ Library \ bin \ mkl_intel_thread.dll (April 2017)
C: \ Windows \ System32 \ mkl_intel_thread.dll (v2009)


mkl_core.dll
C: \ Anaconda3 \ pkgs \ mkl-2017.0.3-0 \ Library \ bin \ mkl_core.dll (April 2017)
C: \ Anaconda3 \ Library \ bin \ mkl_core.dll (Oktober 2016)
C: \ Windows \ System32 \ mkl_core.dll (v2009)


libiomp5md.dll
C: \ Anaconda3 \ pkgs \ mkl-2017.0.3-0 \ Library \ bin \ libiomp5md.dll
C: \ Anaconda3 \ Library \ bin \ libiomp5md.dll
C: \ Anaconda3 \ envs \ tensorflow-cpu \ Library \ bin \ libiomp5md.dll
C: \ Program Files (x86) \ Common Files \ Intel \ Shared Libraries \ redist \ ia32 \ compiler \ libiomp5md.dll
C: \ Program Files (x86) \ Common Files \ Intel \ Shared Libraries \ redist \ intel64 \ compiler \ libiomp5md.dll
C: \ Windows \ System32 \ libiomp5md.dll

masing-masing versi, ukuran file, dan versinya berbeda. Pada dasarnya pustaka yang dimuat merujuk
ke versi yang sangat lama mulai dari 2009 hingga 2017. Ini adalah masalah dengan numpy memuat versi lama dari folder C: \ Windows \ System32 \.

@tobigithub : jika Anda mengalami masalah saat memuat pustaka MKL, maka Anda harus membawanya ke pengembang anaconda - proyek numpy tidak mendistribusikan binari apa pun yang menggunakan MKL, dan conda memiliki caranya sendiri untuk mencoba menghindari DLL neraka yang kami tidak dapat membantu Anda.

@tobigithub , ini sepertinya salinan dari https://github.com/numpy/numpy/issues/6923. Anda dapat mencobanya jika https://github.com/numpy/numpy/issues/6923#issuecomment -168490201 atau https://github.com/numpy/numpy/issues/6923#issuecomment -169073613 cocok untuk Anda.

Solusi lain adalah menemukan dan menghapus instalan perangkat lunak yang menyalin DLL MKL lama ke dalam folder sistem windows. Anda juga harus mempertimbangkan untuk menghapus file MKL yang dapat didistribusikan ulang.

@njsnj dan @carlkl
Terima kasih. Ada ratusan aplikasi yang menggunakan perpustakaan intel ini (termasuk Microsoft dan Intel sendiri). Dengan ribuan aplikasi terinstal pasti sesuatu akan rusak, tetapi memperbarui sistem lama DLLS (2009) jika mereka mendahului masalah baru mungkin akan menciptakan bencana. Mungkin sistem kritis seperti driver RAID INTEL atau USB atau adaptor grafis akan gagal. Hanya melaporkan masalah ini di sini, ini hanya firasat, numpy 1.13.1 baru saja berfungsi dengan baik sebelumnya dan sekarang pada bulan Juli 2017 secara ajaib rusak, ini mungkin terkait dengan penginstalan perangkat lunak, pembaruan windows atau paket atau acara lainnya, pesan kesalahan itu sendiri mungkin juga tidak membantu.

Masalah serupa dengan numpy dan DLL:
https://www.google.com/search?q=numpy+ "Pengimporan + modul + multiarray + numpy + ekstensi + gagal." & oq = numpy + "Impor + modul + multiarray + numpy + extension + gagal."

@tobigithub : Maaf Anda mengalami masalah, tetapi sekali lagi, jika masalahnya disebabkan oleh interaksi numpy dan MKL, maka tidak ada yang dapat dilakukan oleh proyek numpy; kami menyediakan kode sumber yang dapat digunakan siapa saja untuk membangun numpy terkait dengan pustaka aljabar linier apa pun yang mereka suka, dan kami menyediakan binari yang ditautkan ke openblas, tetapi kami tidak menautkan numpy sendiri ke MKL atau memiliki kendali atas bagaimana pengembang konda mengaturnya .

Pencarian google itu hanya menemukan setiap kasus di mana ada orang yang memiliki masalah dengan binari numpy - misalnya, laporan bug yang Anda komentari ini diajukan untuk melaporkan ketidakcocokan antara binari numpy yang Anda dapatkan dengan pip install numpy dan python 3.6.0, dan tidak ada hubungannya dengan MKL. Sejauh yang saya tahu Anda satu-satunya orang yang melaporkan masalah yang disebabkan oleh versi lama MKL di C:\Windows\System32 . Dan masuk akal bahwa ini akan menyebabkan masalah, karena aturan pemuatan DLL Windows dibuat dengan asumsi bahwa C:\Windows\System32 hanya berisi DLL sistem operasi penting yang tidak boleh diganti oleh pengguna dan harus menimpa yang lainnya .. Menempatkan MKL di sana benar-benar buruk.

Jika RAID atau driver USB Anda atau apa pun yang rusak sedemikian rupa sehingga merusak perangkat lunak lain di sistem Anda, maka saya kira Anda harus melaporkan bug dengan mereka? Saya bersimpati atas rasa frustrasi Anda, tetapi sebenarnya tidak ada yang dapat kami lakukan di sini untuk membantu Anda, selain memberikan saran untuk mengidentifikasi perangkat lunak yang sebenarnya salah. Ini tidak numpy.

@jodohgratis
terima kasih, saya baru saja mengonfirmasi menggunakan VM pada sistem Windows 10 yang bersih yang belum pernah melihat Intel MKL DLL, numpy atau conda, semuanya baik-baik saja dan numpy berfungsi. Saya hanya bingung bagaimana numpy tiba-tiba berhenti bekerja, bisa jadi pihak ketiga. Mungkin perlu lebih banyak penggalian, mari kita lihat apa yang bisa kita temukan untuk membuat numpy kuat terhadap masalah ketergantungan apa pun.

... ok disini solusinya

Solusinya memang terkait dengan beberapa masalah ketergantungan DLL di bawah WIN dengan pustaka Intel MKL
kesalahan impor numpy berada di bawah python 3.6.2 dan numpy 1.13.1:

"import numpy"
numpy \ core_init_.py ", baris 16, dalam
dari. import multiarray
ImportError: Beban DLL gagal: Prosedur yang ditentukan tidak dapat ditemukan.

Solusi cepat dan kotor adalah menyalin semua pustaka mkl * .dll Intel dari subfolder lingkungan tertentu (env) (lihat di stackoverflow )

<\ Library \ bin> ke
<\ Libsite-packages \ numpy \ core>

04/13/2017  12:50 AM        30,277,392 mkl_avx.dll
04/13/2017  12:50 AM        38,253,840 mkl_avx2.dll
04/13/2017  12:50 AM        42,234,640 mkl_avx512.dll
04/13/2017  12:50 AM        45,722,896 mkl_avx512_mic.dll
04/13/2017  12:50 AM        25,369,360 mkl_core.dll
04/13/2017  12:50 AM        24,541,456 mkl_def.dll
04/13/2017  12:50 AM        24,506,640 mkl_intel_thread.dll
04/13/2017  12:50 AM        29,744,400 mkl_mc.dll
04/13/2017  12:50 AM        30,594,320 mkl_mc3.dll
04/13/2017  12:50 AM        12,567,824 mkl_rt.dll
04/13/2017  12:50 AM        11,388,688 mkl_sequential.dll
04/13/2017  12:50 AM        12,575,504 mkl_tbb_thread.dll
04/13/2017  12:50 AM        11,250,960 mkl_vml_avx.dll
04/13/2017  12:50 AM        11,463,952 mkl_vml_avx2.dll
04/13/2017  12:50 AM        10,285,840 mkl_vml_avx512.dll
04/13/2017  12:50 AM        11,692,304 mkl_vml_avx512_mic.dll
04/13/2017  12:50 AM         5,224,208 mkl_vml_cmpt.dll
04/13/2017  12:50 AM         5,345,552 mkl_vml_def.dll
04/13/2017  12:50 AM         9,477,904 mkl_vml_mc.dll
04/13/2017  12:50 AM         9,368,336 mkl_vml_mc2.dll
04/13/2017  12:50 AM         9,593,616 mkl_vml_mc3.dll

sekarang numpy dapat diimpor dan berfungsi dengan baik.

Ini adalah masalah numpy / conda / python di bawah windows. Kedua contoh tersebut dijalankan secara bersamaan menggunakan versi Anaconda Navigator (conda) yang sama. Menginstal versi python yang berbeda dan kemudian menguji semua dependensi dan nomor versi yang berbeda dapat membantu menemukan masalahnya. Setelah itu perubahan kode harus diselidiki.

Kerja
Python 3.5.3 dan numpy 1.10.1 dan mkl 2017.0.3

Python 3.5.3 |Continuum Analytics, Inc.| (default, May 15 2017, 10:43:23) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> print (sys.version)
3.5.3 |Continuum Analytics, Inc.| (default, May 15 2017, 10:43:23) [MSC v.1900 64 bit (AMD64)]
>>>
>>> import numpy
>>> numpy.version.version
'1.10.1'
>>>
>>> import numpy as np
>>> a = np.array([1, 2, 3, 4, 5])
>>> print(a)
[1 2 3 4 5]
>>>

Rusak
Python 3.5.3 dan numpy 1.13.1 dan mkl 2017.0.3

Python 3.5.3 |Continuum Analytics, Inc.| (default, May 15 2017, 10:43:23) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> print (sys.version)
3.5.3 |Continuum Analytics, Inc.| (default, May 15 2017, 10:43:23) [MSC v.1900 64 bit (AMD64)]
>>>
>>> import numpy
Traceback (most recent call last):
  File "C:\Anaconda3\envs\python35-numpy-test\lib\site-packages\numpy\core\__init__.py", line 16, in <module>
    from . import multiarray
ImportError: DLL load failed: The specified procedure could not be found.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Anaconda3\envs\python35-numpy-test\lib\site-packages\numpy\__init__.py", line 142, in <module>
    from . import add_newdocs
  File "C:\Anaconda3\envs\python35-numpy-test\lib\site-packages\numpy\add_newdocs.py", line 13, in <module>
    from numpy.lib import add_newdoc
  File "C:\Anaconda3\envs\python35-numpy-test\lib\site-packages\numpy\lib\__init__.py", line 8, in <module>
    from .type_check import *
  File "C:\Anaconda3\envs\python35-numpy-test\lib\site-packages\numpy\lib\type_check.py", line 11, in <module>
    import numpy.core.numeric as _nx
  File "C:\Anaconda3\envs\python35-numpy-test\lib\site-packages\numpy\core\__init__.py", line 26, in <module>
    raise ImportError(msg)
ImportError:
Importing the multiarray numpy extension module failed.  Most
likely you are trying to import a failed build of numpy.
If you're working with a numpy git repo, try `git clean -xdf` (removes all
files not under version control).  Otherwise reinstall numpy.

Original error was: DLL load failed: The specified procedure could not be found.

@tobigithub : ini adalah tempat yang salah untuk membahasnya, seperti yang sudah
dijelaskan kepada Anda beberapa kali. Jika Anda memiliki masalah dengan anakonda, Anda
perlu melaporkannya ke kontinum / anaconda.

Masalah Appveyor untuk Python 3.6.2 ada di https://github.com/appveyor/ci/issues/1770

Pembangun roda Python 3.6 terlihat diupdate ke Python 3.6.2, jadi menutup ini.

Kesesuaian. Versi Python Interpreter dan versi numpy.
pip3 menginstal numpy versi 3.5, jadi Anda harus menggunakan anaconda untuk menyiapkan python env dari versi yang sesuai

Mengalami masalah yang sama dengan Python 3.6.2 dan Numpy / Scipy di Windows 8. Anaconda juga tidak diinstal.

Python 3.6.2 (v3.6.2:5fd33b5, Jul  8 2017, 04:14:34) [MSC v.1900 32 bit (Intel)] on win32

C:\Python36\Scripts>pip freeze

numpy==1.14.2
pandas==0.21.0
scipy==1.0.1

Python 2.7 hadir dalam variabel PATH. Sudah dihapus.

Kemudian hapus instalan modul scipy dan numpy yang ada. Pastikan bahwa perintah dijalankan sebagai Administrator.

pip uninstall numpy
pip uninstall scipy

Lalu lari

pip install numpy --upgrade
pip install scipy --upgrade

Ini menyelesaikan masalah!

Terima kasih,
Praveen

Hai,
Saya masih mendapatkan kesalahan ini.
Versi Python: 3.6.4
versi numpy: 1.14.3
Pelacakan tumpukan seperti di bawah ini:
Traceback (panggilan terakhir terakhir):
File "D: \ Personal \ Softwares \ InstallationDir \ Python \ libsite-packages \ numpy \ core_init_.py", baris 16, di
dari. import multiarray
ImportError: Beban DLL gagal: Jalur jaringan tidak ditemukan.

Selama menangani pengecualian di atas, pengecualian lain terjadi:

Traceback (panggilan terakhir terakhir):
File "pca_svm.py", baris 1, dalam
impor numpy sebagai np
File "D: \ Personal \ Softwares \ InstallationDir \ Python \ libsite-packages \ numpy_init_.py", baris 142, di
dari. impor add_newdocs
File "D: \ Personal \ Softwares \ InstallationDir \ Python \ libsite-packages \ numpy \ add_newdocs.py", baris 13, di
dari numpy.lib impor add_newdoc
File "D: \ Personal \ Softwares \ InstallationDir \ Python \ libsite-packages \ numpy \ lib_init_.py", baris 8, di
dari .type_check import *
File "D: \ Personal \ Softwares \ InstallationDir \ Python \ libsite-packages \ numpy \ lib \ type_check.py", baris 11, di
impor numpy.core.numeric sebagai nx
File "D: \ Personal \ Softwares \ InstallationDir \ Python \ libsite-packages \ numpy \ core_init.py", baris 26, di
naikkan ImportError (msg)
ImportError:
Pengimporan modul ekstensi numpy multiarray gagal. Paling
kemungkinan Anda mencoba mengimpor build numpy yang gagal.
Jika Anda bekerja dengan repo git numpy, coba git clean -xdf (hapus semua
file tidak di bawah kendali versi). Jika tidak, instal ulang numpy.

Kesalahan asli adalah: Beban DLL gagal: Jalur jaringan tidak ditemukan.

bantuan apa pun dihargai.
Terima kasih,

@KumarNavet itu masalah yang berbeda dari masalah ini. Pesan pengecualian memberitahu Anda bahwa Anda memiliki instalasi yang rusak dan harus menginstal ulang numpy. Jika tidak berhasil, buka masalah baru dan beri tahu kami cara persis Anda menginstal numpy.

Masalah tentang biner 3.6.1 yang tidak berfungsi dengan 3.6.0 ini pasti telah diselesaikan, dan orang-orang terus memposting di sini masalah penginstalan lain karena importerror terlihat serupa. Karenanya saya mengunci masalah ini.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat