قم بإنشاء بيئة افتراضية جديدة باستخدام Anaconda Navigator 1.9.6 ضمن Windows 10 ، وتحديد Python 3.7 ، وتسمية python37
في وحدة التحكم الخاصة بـ 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
(نفس الشيء مع المعلمة - 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!
لم تحل جميع النصائح وعمليات إعادة التثبيت عبر pip و conda أو إصدارات مختلفة من numpy (مثل 1.15.4) هذه المشكلة بالنسبة لي.
إذا قمت بإلغاء تثبيت numpy متعدد النقاط حتى لا يتبقى أي عدد ، ثم قمت بتثبيت conda numpy ، فإن استيراد numpy يعمل بشكل مثير للاهتمام (في 1.15.4).
يقوم تثبيت conda numpy بما يلي:
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
ما الذي ينقص طريقة البيب؟
أيه أفكار؟
هناك فرق بين موقع مكتبات الدعم الإضافية المزودة بأناكوندا وتلك المزودة بمخزون تخزين تحصل عليه من pip install
. يتطلب هذا إجراء تعديلات على المتغير PATH
. ربما تفشل تعديلات PATH
عند الاستيراد. هل الدليل site-packages\numpy\.libs
موجود وهل يحتوي على ملفات *.dll
؟، إذا كان الأمر كذلك ، يمكنك محاولة إضافة هذا الدليل إلى PATH
قبل تشغيل python:
rem This fails
python -c "import numpy"
rem Does this succeed ???
PATH=path\to\site-packages\numpy\.libs;%PATH%
python -c "import numpy"
يرجى إبلاغنا إذا كان هذا الدليل موجودًا وإذا نجح تغيير المسار ، فهذا يشير إلى أن الكود الموجود في numpy\__config__.py
يفشل في تعديل os.environ['PATH']
. ربما تكون قد تجاوزت الطول المسموح به PATH
، أو أن هناك مشكلة أخرى في متغير البيئة PATH
.
تضع Anaconda ملفات dll الإضافية في <anaconda install>\Library\bin
، وتضيف هذا الدليل إلى المسار عند تنشيط بيئة anaconda. يحاول Stock numpy ، كما هو موضح أعلاه ، إلحاق الدليل .lib
بنهاية المتغير PATH
.
أنت تعمل بالفعل!
C: \ Users \ Name.conda \ envs \ test37 \ Lib \ site -packs \ numpy.libs موجود ويوجد فيه ملف واحد:
libopenblas.IPBC74C7KURV7CB2PKT5Z5FNR3SIBV4J.gfortran-win_amd64.dll
سأحاول تثبيتًا جديدًا بمسار أولي أقصر للتحقق من مسيرتك في غضون ساعة تقريبًا.
سؤال جانبي: ألا يجب أن يكون هناك المزيد من dlls في هذا المسار؟ أريد استخدام OpenMP و mkl مع pytorch وليس openblas ...
إذا كنت تريد استخدام mkl ، فاستخدم conda وليس pip
معذرةً ، استخدم pip install intel-numpy
not pip install numpy
، لكنك ستحصل على 1.15.1 . تجعل Conda الأمر أسهل ، ويبدو أنك تستخدم الأناكوندا ، لذلك من المحتمل أن يمنحك التمسك بالكوندا تجربة موحدة أكثر.
حسنًا ، لقد اختصرت PATH ولا يزال لا يعمل مع "تثبيت النقطة numpy".
هذا مُسبق إلى PATH إذا "قمت بتنشيط conda test37":
المسار = 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 \ سلة مهملات؛...
لا يزال مساري طويلاً ، لكن لا يمكنني إزالة أي شيء منه بعد الآن ، لأن الأدوات الأخرى تحتاجه كما هو.
لماذا لا يوجد Conda Numpy 1.16.1؟
شكرا على مساعدتك رفيقي!
(test37) D: \ test> pip تثبيت 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" 1.15.4 والتي تعمل بشكل جيد.
mattip شكرا
ربما يجب علينا الربط بشكل ثابت وتخفيف الحاجة إلى تشويه هذا المسار
هل يمكن أن يكون لمشكلة تحرير PATH هذه في numpy لإصدارات python الأحدث نفس السبب؟
https://github.com/pytorch/pytorch/issues/4518#issuecomment-463224849 -> https://github.com/pytorch/pytorch/issues/17051
حصلت على نفس نوع الخطأ لـ scipy أيضًا. بعد إنشاء env باستخدام conda ، اضطررت إلى إلغاء التثبيت باستخدام pip والتثبيت باستخدام conda لجميع الحزم التي تسببت في مشكلة بالنسبة لي. لقد نجح ذلك بالنسبة لي ، على الرغم من أنه ليس حلاً مثاليًا لأن هذه كانت عملية يدوية للغاية.
djdookie : فقط للتأكد مما نجح وما لم ينجح. لديك dll في C:\Users\Name.conda\envs\test37\Lib\site-packages\numpy.libs
. عمل ذلك مسبقًا على PATH قبل بدء عمل python. هل يمكنك محاولة إلحاق ذلك بنهاية PATH (باستخدام '؛' seperator) واختبار ما إذا كان يعمل numpy المثبت بالأنابيب (ربما في بيئة conda جديدة ، والتي من شأنها تغيير المسار)؟
تحرير: لاحظ أن البيئة الجديدة سيكون لها مسار مختلف إلى dll
يبدو أن هذا هو ananconda مكسور ، راجع هذه المسألة ContinuumIO / anaconda-issues # 10628
إغلاق. يبدو أن أناكوندا قد أصلحت المشكلة التي تسببت في ذلك.
لقد قمت للتو بتنزيل أحدث إصدار من نظام التشغيل windows لـ python3.7 لـ windows 7 وحصلت على هذه المشكلة. هل يمكننا إعادة الفتح؟
أنا حل المشكلة. لقد كانت مشكلة في المسار لأنني كنت أستخدم WingIDE. لقد استخدمت هذه التعليمات لإصلاحها
https://wingware.com/blog/anaconda
على وجه التحديد ، فتحت موجه أوامر anaconda وقمت بعمل "PATH" وقمت بنسخه في مسار الجناح الخاص بي لمشروعي.
كمرجع ، My PATH = 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 ؛
لقد ذهبت للتو إلى المجلد وحذفت واحدًا. الذي يبدو أنه قد ثابتة.
يبدو أن هذا يحدث أيضًا في Jupyter إذا لم تقم "بتنشيط conda" البيئة التي ستستخدمها مسبقًا لبدء Jupyter.
ويحدث أيضًا في VS Code إذا لم تقم "بتنشيط" البيئة قبل البدء في الكود. إذا كنت أستخدم "رمز". في موجه بيئة conda ، يعمل.
يبدو أن هذا يحدث أيضًا في Jupyter إذا لم تقم "بتنشيط conda" البيئة التي ستستخدمها مسبقًا لبدء Jupyter.
هذا عمل معي. ويبدو أن هذه القضية خاصة في مختبر جوبيتر
لقد قمت بحل مشاكلي مع مشكلات تحميل Numpy DLL عن طريق استبدال Anaconda3 بـ WinPython.
لدي هذه المشكلة مع WinPaython
التعليق الأكثر فائدة
هناك فرق بين موقع مكتبات الدعم الإضافية المزودة بأناكوندا وتلك المزودة بمخزون تخزين تحصل عليه من
pip install
. يتطلب هذا إجراء تعديلات على المتغيرPATH
. ربما تفشل تعديلاتPATH
عند الاستيراد. هل الدليلsite-packages\numpy\.libs
موجود وهل يحتوي على ملفات*.dll
؟، إذا كان الأمر كذلك ، يمكنك محاولة إضافة هذا الدليل إلىPATH
قبل تشغيل python:يرجى إبلاغنا إذا كان هذا الدليل موجودًا وإذا نجح تغيير المسار ، فهذا يشير إلى أن الكود الموجود في
numpy\__config__.py
يفشل في تعديلos.environ['PATH']
. ربما تكون قد تجاوزت الطول المسموح بهPATH
، أو أن هناك مشكلة أخرى في متغير البيئةPATH
.تضع Anaconda ملفات dll الإضافية في
<anaconda install>\Library\bin
، وتضيف هذا الدليل إلى المسار عند تنشيط بيئة anaconda. يحاول Stock numpy ، كما هو موضح أعلاه ، إلحاق الدليل.lib
بنهاية المتغيرPATH
.