Numpy: Échec de l'importation du module d'extension numpy multiarray

Créé le 20 juin 2017  ·  39Commentaires  ·  Source: numpy/numpy

J'essaye d'installer numpy 1.13.0. Ma machine est Windows 7 et mon installation Python est Python 3.6.0 64 bits. J'avais déjà installé une ancienne version de numpy (à partir du site de Christoph Gohlke) mais je l'ai désinstallée. J'ai également eu quelques installations Anaconda, mais je les ai également désinstallées. Cependant, lorsque j'essaye d'importer numpy, j'obtiens l'erreur ci-dessus:

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.                                                                                       

J'ai vérifié toutes les autres copies de Python sur mon PC et aucun d'entre eux n'a installé numpy. Je ne veux vraiment pas désinstaller et réinstaller toute mon installation Python, car il y a beaucoup de packages installés que je devrais réinstaller. Pour autant que je sache, aucun des autres packages n'est susceptible d'affecter numpy (ou s'ils le peuvent, ils sont de toute façon à la dernière version).

Quelles options ai-je pour déterminer ce qui ne va pas ici avant de devoir effacer chaque installation de Python sur ma machine et effectuer une réinstallation complète?

00 - Bug

Commentaire le plus utile

Windows 10, Python 3.6, installé à l'aide de pip et lorsque je l'importe, cela me donne cette erreur.

''
C: \ Utilisateurs \ Kevin> python
Python 3.6.0 (v3.6.0: 41df79263a11, 23 décembre 2016, 07:18:10) [MSC v.1900 32 bits
(Intel)] sur win32
Tapez "aide", "copyright", "crédits" ou "licence" pour plus d'informations.

importer numpy
Traceback (dernier appel le plus récent):
Fichier "D: \ Python3.6 \ libsite-packages \ numpy \ core__init __. Py", ligne 16, dans

de . importer multiarray
ImportError: le chargement de la DLL a échoué: la procédure spécifiée est introuvable.

Lors de la gestion de l'exception ci-dessus, une autre exception s'est produite:

Traceback (dernier appel le plus récent):
Fichier "", ligne 1, dans
Fichier "D: \ Python3.6 \ libsite-packages \ numpy__init __. Py", ligne 142, dans

de . import add_newdocs
Fichier "D: \ Python3.6 \ libsite-packages \ numpy \ add_newdocs.py", ligne 13, dans

depuis numpy.lib import add_newdoc
Fichier "D: \ Python3.6 \ libsite-packages \ numpy \ lib__init __. Py", ligne 8, dans

depuis .type_check import *
Fichier "D: \ Python3.6 \ libsite-packages \ numpy \ lib \ type_check.py", ligne 11, dans

importer numpy.core.numeric comme _nx
Fichier "D: \ Python3.6 \ libsite-packages \ numpy \ core__init __. Py", ligne 26, dans

lever ImportError (msg)
ImportError:
L'importation du module d'extension numpy multiarray a échoué. Plus
Vous essayez probablement d'importer une version échouée de numpy.
Si vous travaillez avec un dépôt numpy git, essayez git clean -xdf (supprime tout
fichiers non sous contrôle de version). Sinon, réinstallez numpy.

L'erreur d'origine était: le chargement de la DLL a échoué: la procédure spécifiée n'a pas pu être
a trouvé.

Tous les 39 commentaires

Non, ne devrait pas être affecté par d'autres packages. Je suppose que vous avez vérifié qu'il n'y a rien de bizarre dans votre PATH ou PYTHONPATH ? Et quand vous dites "les désinstaller", avez-vous entré dans votre site-packages et avez-vous fait (un équivalent Windows de) rm -rf numpy ? Peut-être qu'il y a des restes du package @cgohlke .

@ matthew-brett ping

J'ai fait pip install numpy . Il n'y a rien dans les packages de sites avec "numpy" dans le nom après cela. Je me suis posé des questions sur la possibilité que ce soit parce que j'avais déjà utilisé les versions de

Il n'y a rien d'évident que je puisse voir sur PATH et je n'ai pas de PYTHONPATH .

Après avoir joué un peu plus avec ctypes il semble définitivement qu'il y ait quelque chose qui ne va pas avec 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>
>>>

En creusant avec Dependency Walker, il semble que certains fichiers ne parviennent pas à se charger (des choses comme API-MS-WIN-CORE-WINRT-ERROR-L1-1-0.DLL ).

Une recherche sur le net montre que ceux-ci sont liés uniquement aux bibliothèques Windows 8. Je suppose que ceux-ci ont été liés accidentellement et que numpy ne désactive pas Windows 7?

Voir https://github.com/dotnet/coreclr/issues/65 et https://answers.microsoft.com/en-us/windows/forum/windows_10-files/missing-api-ms-win-core-dlls / d99d1368-0f92-43db-bbdb-7d080f1f96e9 pour quelques liens que j'ai trouvés lors de mes recherches sur ce problème.

Comme solution à court terme, je suis revenu à numpy 1.12.1

Je viens de vérifier avec un collègue. Il a la version 32 bits et cela semble fonctionner correctement. Cela peut donc être quelque chose de spécifique au binaire 64 bits.

Il s'agit probablement du problème Python 29943 . Les extensions construites avec Python 3.6.1 ne fonctionneront pas sur 3.6.0.

@cgohlke - bonne suggestion. À partir de ce bogue, nous devrions reconstruire la roue numpy avec Python 3.6.0. Appveyor utilise par défaut la version 3.6.1: https://www.appveyor.com/docs/build-environment/#python

Ce bogue ne devrait affecter que les paquets qui font référence à PySlices_GetIndicesEx , cependant, et peut être diagnostiqué en vérifiant si le binaire résultant se réfère à PySlice_AdjustIndices . Je pensais que numpy n'était pas affecté.

Je viens de tester sur mon PC à la maison, qui a Python 3.6.1, et numpy 1.13 fonctionne bien là-bas. Cependant, mon ordinateur personnel est également Windows 10 et présente de nombreuses autres différences, ce n'est donc pas un test parfait. Je mettrai à jour mon PC de travail vers la version 3.6.1 demain et je ferai des tests là-bas.

Sur ma machine de test, j'ai installé numpy dans un virtualenv pour Python.org 3.6.0, obtenu le crash, puis installé Python 3.6.1 et je n'ai pas eu le crash.

Je peux confirmer que la mise à niveau vers la version 3.6.1 résout mon problème sur la machine avec laquelle j'avais initialement le problème. Personnellement, je suis d'accord pour que ce problème soit fermé avec "mise à niveau vers 3.6.1" comme résolution, mais je vous laisse le soin de le fermer au cas où vous préféreriez corriger le binaire pour prendre en charge la version 3.6.0 .

@ matthew-brett Je vais bientôt faire un 1.13.1. Allez-vous apporter des modifications à la construction?

@charris - Je suppose que nous devrions construire sur 3.6.0. Je ne pense pas qu'il existe un moyen de faire cela avec Appveyor et les Pythons de série, nous devrons donc utiliser Conda.

J'expérimentais la construction d'openblas cette fois, mais cela peut prendre un peu de temps pour finir - disons une semaine?

Quelqu'un peut-il confirmer si les mauvaises roues numpy Windows contiennent une référence au symbole PySlice_AdjustIndices ? S'ils le font, le problème n'est pas limité à Windows, nous devrons donc faire attention à cela, mais au moins il est connu et sera corrigé dans la version 3.6.2 qui sortira sous peu. Sinon, il se passe autre chose, peut-être une rupture abi 3.6.1 inconnue auparavant que nous devrions signaler en amont de toute urgence.

Cc @zooba

Quelqu'un peut-il confirmer si les mauvaises roues numpy Windows contiennent une référence au symbole PySlice_AdjustIndices ?

Oui, multiarray.cp36-win_amd64.pyd références PySlice_AdjustIndices et PySlice_Unpack .

hein, je jure que j'ai audité numpy pour voir s'il était affecté par bpo-29943, et j'ai conclu que ce n'était pas le cas. Pourtant, en effet, il semble qu'un type nommé "njsmith" ait ajouté ces appels l'année dernière: https://github.com/numpy/numpy/pull/7215
Désolé pour la confusion, je ne sais pas trop à quoi je pensais.

Windows 10, Python 3.6, installé à l'aide de pip et lorsque je l'importe, cela me donne cette erreur.

''
C: \ Utilisateurs \ Kevin> python
Python 3.6.0 (v3.6.0: 41df79263a11, 23 décembre 2016, 07:18:10) [MSC v.1900 32 bits
(Intel)] sur win32
Tapez "aide", "copyright", "crédits" ou "licence" pour plus d'informations.

importer numpy
Traceback (dernier appel le plus récent):
Fichier "D: \ Python3.6 \ libsite-packages \ numpy \ core__init __. Py", ligne 16, dans

de . importer multiarray
ImportError: le chargement de la DLL a échoué: la procédure spécifiée est introuvable.

Lors de la gestion de l'exception ci-dessus, une autre exception s'est produite:

Traceback (dernier appel le plus récent):
Fichier "", ligne 1, dans
Fichier "D: \ Python3.6 \ libsite-packages \ numpy__init __. Py", ligne 142, dans

de . import add_newdocs
Fichier "D: \ Python3.6 \ libsite-packages \ numpy \ add_newdocs.py", ligne 13, dans

depuis numpy.lib import add_newdoc
Fichier "D: \ Python3.6 \ libsite-packages \ numpy \ lib__init __. Py", ligne 8, dans

depuis .type_check import *
Fichier "D: \ Python3.6 \ libsite-packages \ numpy \ lib \ type_check.py", ligne 11, dans

importer numpy.core.numeric comme _nx
Fichier "D: \ Python3.6 \ libsite-packages \ numpy \ core__init __. Py", ligne 26, dans

lever ImportError (msg)
ImportError:
L'importation du module d'extension numpy multiarray a échoué. Plus
Vous essayez probablement d'importer une version échouée de numpy.
Si vous travaillez avec un dépôt numpy git, essayez git clean -xdf (supprime tout
fichiers non sous contrôle de version). Sinon, réinstallez numpy.

L'erreur d'origine était: le chargement de la DLL a échoué: la procédure spécifiée n'a pas pu être
a trouvé.

@ matthew-brett Des nouvelles à ce sujet? J'aimerais sortir la 1.13.1 cette semaine si possible.

@njsmith Python 3.6.2 doit sortir ce vendredi. Est-ce que cela résout le problème et est-ce toujours dans les délais?

EDIT: Si nous construisons avec Python 3.6.0 ou 3.6.2, les roues fonctionneront-elles toujours avec 3.6.1?

On dirait que nous avons esquivé cette balle avec 1.12.1, mais juste quelques jours plus tard ...

Oui, la construction avec 3.6.0 ou 3.6.2 devrait être sûre, dans le sens où les binaires résultants fonctionneront sur tous les systèmes 3.6.x.

Si nous devons le faire, il est également possible d'utiliser un hack de préprocesseur pour contourner le problème sur 3.6.1. Je pense que l'incantation appropriée est celle-ci: https://github.com/pandas-dev/pandas/blob/24719672685027710cf432023a7fbc3222b0b05c/pandas/_libs/src/compat_helper.h#L29 -L33

Je travaille juste sur les compilations mingw OpenBLAS, avec @carlkl . Certains progrès, mais je ne peux pas promettre de le faire dans les prochains jours. Utiliser le piratage du préprocesseur pour le moment?

@ matthew-brett Si la version 3.6.2 sort vendredi et est disponible sur appveyor peu de temps après, j'irais aussi vite dans cette direction. Par curiosité, qu'est-ce que numpy on window utilise actuellement?

Nous utilisons ATLAS pour le moment, mais les performances sont plutôt mauvaises. Ce serait bien de pouvoir utiliser OpenBLAS, pour les performances et la cohérence avec les versions Linux.

Je ne sais pas combien de temps Appveyor prendra avant de mettre à niveau Python 3.6 vers 3.6.2.

Même problème, numpy v1.13.1 et python 3.6.1 ont fonctionné pendant quelques mois, maintenant cela échoue. Ceci était basé sur une installation conda utilisant le navigateur Windows Anaconda. Mai et juin 2017 tout le code fonctionne bien, puis juillet avec une mise à jour et et python 3.6.2 "import numpy" ne fonctionne plus.

Une enquête plus approfondie (uniquement basée sur numpy et python 3.6.2 conduit à
C: \ Anaconda3 \ envs \ tensorflow-cpu \ Libsite-packages \ numpy \ coremultiarray.cp36-win_amd64.pyd
(DLL python compilée) du 7/7/2017 qui charge
C: \ Windows \ System32 \ mkl_intel_thread.dll (v2009)
C: \ Windows \ System32 \ mkl_core.dll (v2009)
C: \ Windows \ System32 \ libiomp5md.dll (v2009)

maintenant le problème est qu'il existe plusieurs versions pour chacune des DLL (enfer DLL)
toutes les différentes dates, versions, tailles de fichiers. Fondamentalement, Anaconda Navigator ou Spyder ou python installés via différents environnements ne chargent pas les versions de DLL correctes.


mkl_intel_thread.dll
C: \ Anaconda3 \ Library \ bin \ mkl_intel_thread.dll (octobre 2016)
C: \ Anaconda3 \ pkgs \ mkl-2017.0.3-0 \ Library \ bin \ mkl_intel_thread.dll (avril 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 (avril 2017)
C: \ Anaconda3 \ Library \ bin \ mkl_core.dll (octobre 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

chacun d'eux différentes versions, tailles de fichiers et versions. Fondamentalement, les bibliothèques chargées font référence
aux très anciennes versions allant de 2009 à 2017. Il s'agit d'un problème avec numpy chargement d'anciennes versions à partir du dossier C: \ Windows \ System32 \.

@tobigithub : si vous rencontrez des difficultés pour charger les bibliothèques MKL, vous devriez apporter cela aux développeurs anaconda - le projet numpy ne distribue aucun binaire qui utilise MKL, et conda a ses propres moyens d'essayer d'éviter l'enfer DLL que nous ne peut pas vraiment vous aider.

@tobigithub , cela semble être une copie de https://github.com/numpy/numpy/issues/6923. Vous pouvez essayer si https://github.com/numpy/numpy/issues/6923#issuecomment -168490201 ou https://github.com/numpy/numpy/issues/6923#issuecomment -169073613 fonctionne pour vous.

Une autre solution consiste à rechercher et désinstaller le logiciel qui a copié les anciennes DLL MKL dans les dossiers système Windows. Vous devriez également envisager de désinstaller les fichiers redistribuables MKL.

@njsmith et @carlkl
Je vous remercie. Il existe littéralement des centaines d'applications qui utilisent ces bibliothèques Intel (y compris Microsoft et Intel lui-même). Avec des milliers d'applications installées, il est certain que quelque chose ne fonctionnera pas, mais la mise à jour de l'ancien système DLLS (2009) si elles sont antérieures à un nouveau problème créera probablement un désastre. Cela peut être critique pour le système, comme l'échec d'un pilote RAID INTEL ou d'un adaptateur USB ou graphique. Il suffit de signaler ce problème ici, c'est juste une intuition, numpy 1.13.1 fonctionnait bien avant et maintenant en juillet 2017, il est magiquement cassé, cela peut être lié aux installations de logiciels, aux mises à jour de Windows ou à tout autre package ou événement, le message d'erreur lui-même n'aide probablement pas non plus.

Problèmes similaires avec numpy et DLL:
https://www.google.com/search?q=numpy+ "L'importation + du + module + multiarray + numpy + extension + a échoué." & oq = numpy + "L'importation + le + multiarray + numpy + extension + module + a échoué."

@tobigithub : Je suis désolé que vous ayez des problèmes, mais encore une fois, si le problème est causé par l'interaction de numpy et MKL, alors le projet numpy ne peut rien y faire; nous fournissons du code source que tout le monde peut utiliser pour construire numpy lié à n'importe quelle bibliothèque d'algèbre linéaire qu'ils aiment, et nous fournissons des binaires liés à openblas, mais nous ne lions pas numpy à MKL nous-mêmes ou n'avons aucun contrôle sur la façon dont les développeurs de conda configurent cela .

Cette recherche Google trouve juste tous les cas où quiconque a eu un problème avec les binaires numpy - par exemple, ce rapport de bogue que vous commentez a été déposé pour signaler une incompatibilité entre les binaires numpy que vous obtenez avec pip install numpy et python 3.6.0, et n'a rien à voir avec MKL. Autant que je sache, vous êtes la seule personne à avoir signalé des problèmes causés par d'anciennes versions de MKL dans C:\Windows\System32 . Et il est logique que cela pose des problèmes, car les règles de chargement des DLL Windows sont configurées sur l'hypothèse que C:\Windows\System32 ne contient que des DLL importantes du système d'exploitation qui ne doivent jamais être remplacées par les utilisateurs et doivent remplacer tout le reste. mettre MKL là-dedans est vraiment mauvais.

Si votre pilote RAID ou USB ou quoi que ce soit est cassé de telle manière qu'il casse d'autres logiciels sur votre système, alors je suppose que vous devriez signaler un bogue avec eux? Je comprends votre frustration, mais nous ne pouvons littéralement rien faire ici pour vous aider, à part faire des suggestions pour identifier le logiciel qui est réellement en faute. Ce n'est pas insensé.

@njsmith
merci, je viens de confirmer l'utilisation d'une VM sur un système Windows 10 propre qui n'a jamais vu de DLL Intel MKL, numpy ou conda, tout va bien et fonctionne numpy. Je suis juste perplexe à quel point numpy a soudainement cessé de fonctionner, pourrait être des tiers. A probablement besoin d'un peu plus de fouille, voyons ce que nous pouvons découvrir pour rendre insensible à tout problème de dépendance.

... ok ici la solution

La solution est en effet liée à certains problèmes de dépendance DLL sous WIN avec les bibliothèques Intel MKL
l'erreur d'importation numpy était sous python 3.6.2 et numpy 1.13.1:

"importer numpy"
numpy \ core_init_.py ", ligne 16, dans
de . importer multiarray
ImportError: le chargement de la DLL a échoué: la procédure spécifiée est introuvable.

La solution rapide et sale consiste à copier toutes les bibliothèques Intel mkl * .dll du sous-dossier d'environnements spécifiques (env) (vu à stackoverflow )

<\ Library \ bin> à
<\ 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

maintenant numpy peut être importé et fonctionne correctement.

C'est un problème numpy / conda / python sous Windows. Les deux exemples sont exécutés en même temps en utilisant la même version d'Anaconda Navigator (conda). L'installation de différentes versions de Python, puis le test de toutes les différentes dépendances et numéros de version peuvent aider à trouver le problème. Après cela, les changements de code doivent être étudiés.

Travail
Python 3.5.3 et numpy 1.10.1 et 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]
>>>

Cassé
Python 3.5.3 et numpy 1.13.1 et 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 : ce n'est pas le bon endroit pour en discuter, comme déjà
vous a expliqué plusieurs fois. Si vous avez des problèmes avec anaconda, vous
besoin de les signaler à continuum / anaconda.

Le problème Appveyor pour Python 3.6.2 est à https://github.com/appveyor/ci/issues/1770

Les constructeurs de roues Python 3.6 semblent être mis à jour vers Python 3.6.2, fermant donc ceci.

Compatibilité. Version de l'interpréteur Python et version de numpy.
pip3 installe numpy de la version 3.5, vous devez donc utiliser anaconda pour configurer un env python de la version correspondante

Avait le même problème avec Python 3.6.2 et Numpy / Scipy sur Windows 8. Anaconda n'est pas installé également.

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 était présent dans la variable PATH. Supprimé.

Puis désinstallé les modules scipy et numpy existants. Assurez-vous que les commandes sont exécutées en tant qu'administrateur.

pip uninstall numpy
pip uninstall scipy

Puis a couru

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

Cela a résolu le problème!

Merci,
Praveen

Salut,
J'obtiens toujours cette erreur.
Version Python: 3.6.4
version numpy: 1.14.3
La trace de pile est comme ci-dessous:
Traceback (dernier appel le plus récent):
Fichier "D: \ Personal \ Softwares \ InstallationDir \ Python \ libsite-packages \ numpy \ core_init_.py", ligne 16, dans
de . importer multiarray
ImportError: le chargement de la DLL a échoué: le chemin d'accès réseau est introuvable.

Lors de la gestion de l'exception ci-dessus, une autre exception s'est produite:

Traceback (dernier appel le plus récent):
Fichier "pca_svm.py", ligne 1, dans
importer numpy comme np
Fichier "D: \ Personal \ Softwares \ InstallationDir \ Python \ libsite-packages \ numpy_init_.py", ligne 142, dans
de . import add_newdocs
Fichier "D: \ Personal \ Softwares \ InstallationDir \ Python \ libsite-packages \ numpy \ add_newdocs.py", ligne 13, dans
depuis numpy.lib import add_newdoc
Fichier "D: \ Personal \ Softwares \ InstallationDir \ Python \ libsite-packages \ numpy \ lib_init_.py", ligne 8, dans
depuis .type_check import *
Fichier "D: \ Personal \ Softwares \ InstallationDir \ Python \ libsite-packages \ numpy \ lib \ type_check.py", ligne 11, dans
importer numpy.core.numeric comme nx
Fichier "D: \ Personal \ Softwares \ InstallationDir \ Python \ libsite-packages \ numpy \ core_init.py", ligne 26, dans
lever ImportError (msg)
ImportError:
L'importation du module d'extension numpy multiarray a échoué. Plus
Vous essayez probablement d'importer une version échouée de numpy.
Si vous travaillez avec un référentiel git numpy, essayez git clean -xdf (supprime tout
fichiers non sous contrôle de version). Sinon, réinstallez numpy.

L'erreur d'origine était: le chargement de la DLL a échoué: le chemin d'accès réseau n'a pas été trouvé.

toute aide est appréciée.
Merci,

@KumarNavneet c'est un problème différent de celui de ce problème. Le message d'exception vous indique que l'installation est interrompue et que vous devez réinstaller numpy. Si cela ne fonctionne pas, veuillez ouvrir un nouveau problème et nous dire exactement comment vous avez installé numpy.

Ce problème concernant les binaires 3.6.1 ne fonctionnant pas avec 3.6.0 a définitivement été résolu, et les gens continuent à publier ici d'autres problèmes d'installation car l'erreur d'importation semble similaire. Par conséquent, je verrouille ce problème.

Cette page vous a été utile?
0 / 5 - 0 notes

Questions connexes

toddrjen picture toddrjen  ·  4Commentaires

astrofrog picture astrofrog  ·  4Commentaires

qualiaa picture qualiaa  ·  3Commentaires

Foadsf picture Foadsf  ·  3Commentaires

dmvianna picture dmvianna  ·  4Commentaires