Buat virtual env baru dengan Anaconda Navigator 1.9.6 pada Windows 10, pilih Python 3.7, beri nama python37
Di konsol VSCode:
(python37) D:\TfsProj\alphastone>pip install numpy
Collecting numpy
Using cached https://files.pythonhosted.org/packages/41/b8/3a6b07352c2542ca1c89be7583e7ca07bf513895b6ac59ae008054f326b1/numpy-1.16.1-cp37-cp37m-win_amd64.whl
Installing collected packages: numpy
Successfully installed numpy-1.16.1
(sama dengan parameter --no-cache-dir)
(python37) D:\TfsProj\alphastone>python
Python 3.7.2 (default, Feb 11 2019, 14:11:50) [MSC v.1915 64 bit (AMD64)] :: Anaconda, Inc. on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy
Traceback (most recent call last):
File "C:\Users\Name\.conda\envs\python37\lib\site-packages\numpy\core\__init__.py", line 16, in <module>
from . import multiarray
File "C:\Users\Name\.conda\envs\python37\lib\site-packages\numpy\core\multiarray.py", line 12, in <module>
from . import overrides
File "C:\Users\Name\.conda\envs\python37\lib\site-packages\numpy\core\overrides.py", line 6, in <module>
from numpy.core._multiarray_umath import (
ImportError: DLL load failed: Das angegebene Modul wurde nicht gefunden.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Users\Name\.conda\envs\python37\lib\site-packages\numpy\__init__.py", line 142, in <module>
from . import core
File "C:\Users\Name\.conda\envs\python37\lib\site-packages\numpy\core\__init__.py", line 47, in <module>
raise ImportError(msg)
ImportError:
IMPORTANT: PLEASE READ THIS FOR ADVICE ON HOW TO SOLVE THIS ISSUE!
Semua saran, penginstalan ulang melalui pip dan conda, atau versi numpy yang berbeda (misalnya 1.15.4) tidak menyelesaikan masalah ini untuk saya.
Jika saya melakukan beberapa pip uninstall numpy sampai tidak ada numpy yang tersisa, dan kemudian melakukan instalasi numpy conda, mengimpor numpy bekerja dengan menarik (di 1.15.4).
A conda install numpy melakukan hal berikut:
The following NEW packages will be INSTALLED:
blas pkgs/main/win-64::blas-1.0-mkl
icc_rt pkgs/main/win-64::icc_rt-2019.0.0-h0cc432a_1
intel-openmp pkgs/main/win-64::intel-openmp-2019.1-144
mkl pkgs/main/win-64::mkl-2019.1-144
mkl_fft pkgs/main/win-64::mkl_fft-1.0.10-py37h14836fe_0
mkl_random pkgs/main/win-64::mkl_random-1.0.2-py37h343c172_0
numpy pkgs/main/win-64::numpy-1.15.4-py37h19fb1c0_0
numpy-base pkgs/main/win-64::numpy-base-1.15.4-py37hc3f5095_0
Apa yang hilang untuk cara pip?
Ada ide?
Ada perbedaan antara lokasi pustaka dukungan tambahan yang disertakan dengan anaconda dan yang disertakan dengan stok numpy yang Anda dapatkan dari pip install
. Ini membutuhkan penyesuaian pada variabel PATH
. Mungkin penyesuaian PATH
gagal saat diimpor. Apakah direktori site-packages\numpy\.libs
ada dan berisi *.dll
files ?, Jika demikian, dapatkah Anda mencoba menambahkan direktori itu ke PATH
sebelum menjalankan python:
rem This fails
python -c "import numpy"
rem Does this succeed ???
PATH=path\to\site-packages\numpy\.libs;%PATH%
python -c "import numpy"
Silakan laporkan kembali kepada kami jika direktori itu ada dan jika mengubah jalur berhasil, ini menunjukkan kode di numpy\__config__.py
gagal untuk mengubah os.environ['PATH']
. Mungkin Anda telah melebihi panjang PATH
diperbolehkan, atau ada masalah lain dengan variabel lingkungan PATH
.
Anaconda menempatkan dll ekstra di <anaconda install>\Library\bin
, dan menambahkan direktori tersebut ke jalur saat Anda mengaktifkan lingkungan anaconda. Stock numpy, seperti dijelaskan di atas, mencoba menambahkan direktori .lib
ke akhir variabel PATH
.
Metode Anda memang berhasil!
C: \ Users \ Name.conda \ envs \ test37 \ Lib \ site-packages \ numpy.libs ada dan ada satu file di dalamnya:
libopenblas.IPBC74C7KURV7CB2PKT5Z5FNR3SIBV4J.gfortran-win_amd64.dll
Saya akan mencoba penginstalan baru dengan jalur awal yang lebih pendek untuk memverifikasi perjanjian Anda dalam waktu sekitar satu jam.
Pertanyaan sampingan: Bukankah seharusnya ada lebih banyak dll di jalur itu? Saya ingin menggunakan OpenMP dan mkl dengan pytorch, bukan openblas ...
Jika Anda ingin menggunakan mkl, gunakan conda, bukan pip
maaf, gunakan pip install intel-numpy
bukan pip install numpy
, tetapi Anda akan mendapatkan 1.15.1 numpy . Conda membuatnya lebih mudah, dan sepertinya Anda menggunakan anaconda, jadi tetap menggunakan conda akan memberi Anda pengalaman yang lebih terpadu.
Ok saya mempersingkat PATH saya dan masih tidak berfungsi dengan "pip install numpy".
Ini ditambahkan ke PATH saya jika saya "conda mengaktifkan test37":
PATH = C: \ Users \ Name.conda \ envs \ test37; C: \ Users \ Name.conda \ envs \ test37 \ Library \ mingw-w64 \ bin; C: \ Users \ Name.conda \ envs \ test37 \ Library \ usr \ bin; C: \ Users \ Name.conda \ envs \ test37 \ Library \ bin; C: \ Users \ Name.conda \ envs \ test37 \ Scripts; C: \ Users \ Name.conda \ envs \ test37 \ tempat sampah;...
PATH saya masih panjang, tetapi saya tidak dapat menghapus apa pun darinya lagi, karena alat lain membutuhkannya seperti itu.
Mengapa tidak ada conda numpy 1.16.1?
Terima kasih atas bantuan Anda, sobat!
(test37) D: \ test> pip instal intel-numpy
Collecting intel-numpy
Could not find a version that satisfies the requirement intel-numpy (from versions: )
No matching distribution found for intel-numpy
"conda install numpy" memberi saya 1.15.4 yang berfungsi dengan baik.
@ mattip TERIMA KASIH BANYAK
Mungkin kita harus secara statis menghubungkan dan mengurangi kebutuhan akan jalur ini yang rusak
Mungkinkah masalah pengeditan PATH ini di numpy untuk versi python yang lebih baru memiliki alasan yang sama?
https://github.com/pytorch/pytorch/issues/4518#issuecomment-463224849 -> https://github.com/pytorch/pytorch/issues/17051
Saya mendapat jenis kesalahan yang sama untuk scipy juga. Setelah membuat env menggunakan conda, saya harus menghapus instalan menggunakan pip dan menginstal menggunakan conda untuk semua paket yang menimbulkan masalah bagi saya. Itu berhasil untuk saya, meskipun ini bukan solusi ideal karena ini adalah operasi yang sangat manual.
@djdookie : hanya untuk memastikan apa yang berhasil dan apa yang tidak. Anda memiliki dll di C:\Users\Name.conda\envs\test37\Lib\site-packages\numpy.libs
. Mempersiapkan itu ke PATH sebelum memulai python bekerja. Bisakah Anda mencoba menambahkannya ke akhir PATH (dengan pemisah ';') dan menguji apakah numpy yang diinstal pip berfungsi (mungkin di lingkungan conda baru, yang akan mengubah jalur)?
Edit: perhatikan bahwa lingkungan baru akan memiliki jalur-ke-dll yang berbeda
Tampaknya ini adalah ananconda rusak, lihat edisi ini ContinuumIO / anaconda-issues # 10628
Penutupan. Anaconda tampaknya telah memperbaiki masalah yang menyebabkannya.
Saya baru saja mengunduh conda versi windows terbaru untuk python3.7 untuk windows 7 dan mendapatkan masalah ini. Bisakah kita buka kembali?
Saya memecahkan masalah. Itu adalah masalah jalur karena saya menggunakan WingIDE. Saya menggunakan instruksi ini untuk memperbaikinya
https://wingware.com/blog/anaconda
Secara khusus, saya membuka command prompt anaconda dan melakukan "PATH" dan menyalinnya ke jalur sayap saya untuk proyek saya.
Untuk referensi, PATH saya = C: \ Users \ xx \ AppData \ Local \ Continuum \ anaconda3; C: \ Users \ xx \ AppData \ Local \ Continuum \ anaconda3 \ Library \ mingw-w64 \ bin; C: \ Users \ xx \ AppData \ Local \ Continuum \ anaconda3 \ Library \ usr \ bin; C: \ Users \ xx \ AppData \ Local \ Continuum \ anaconda3 \ Library \ bin; C: \ Users \ xx \ AppData \ Local \ Continuum \ anaconda3 \ Scripts ; C: \ Users \ xx \ AppData \ Local \ Continuum \ anaconda3 \ bin; C: \ Users \ xx \ AppData \ Local \ Continuum \ anaconda3 \ condabin;
Saya hanya pergi ke folder dan menghapus satu. Itu sepertinya sudah memperbaikinya.
Ini juga tampaknya terjadi di Jupyter jika Anda tidak "mengaktifkan conda" lingkungan yang akan Anda gunakan SEBELUMNYA untuk memulai Jupyter.
Dan itu juga terjadi di VS Code jika Anda tidak "mengaktifkan" lingkungan SEBELUM memulai kode vs. Jika saya menggunakan "kode". di prompt lingkungan conda, itu berhasil.
Ini juga tampaknya terjadi di Jupyter jika Anda tidak "mengaktifkan conda" lingkungan yang akan Anda gunakan SEBELUMNYA untuk memulai Jupyter.
Ini berhasil untuk saya. Dan masalahnya tampaknya terutama di lab jupyter
Saya menyelesaikan masalah saya dengan masalah pemuatan DLL Numpy dengan mengganti Anaconda3 dengan WinPython.
Saya memiliki masalah ini dengan WinPaython
Komentar yang paling membantu
Ada perbedaan antara lokasi pustaka dukungan tambahan yang disertakan dengan anaconda dan yang disertakan dengan stok numpy yang Anda dapatkan dari
pip install
. Ini membutuhkan penyesuaian pada variabelPATH
. Mungkin penyesuaianPATH
gagal saat diimpor. Apakah direktorisite-packages\numpy\.libs
ada dan berisi*.dll
files ?, Jika demikian, dapatkah Anda mencoba menambahkan direktori itu kePATH
sebelum menjalankan python:Silakan laporkan kembali kepada kami jika direktori itu ada dan jika mengubah jalur berhasil, ini menunjukkan kode di
numpy\__config__.py
gagal untuk mengubahos.environ['PATH']
. Mungkin Anda telah melebihi panjangPATH
diperbolehkan, atau ada masalah lain dengan variabel lingkunganPATH
.Anaconda menempatkan dll ekstra di
<anaconda install>\Library\bin
, dan menambahkan direktori tersebut ke jalur saat Anda mengaktifkan lingkungan anaconda. Stock numpy, seperti dijelaskan di atas, mencoba menambahkan direktori.lib
ke akhir variabelPATH
.