Numpy: Das Importieren der numpy c-Erweiterungen ist fehlgeschlagen.

Erstellt am 5. Jan. 2020  ·  6Kommentare  ·  Quelle: numpy/numpy

Verwenden von Pyinstaller zum Erstellen einer ausführbaren Datei, Get Importing the numpy c-extensions ist fehlgeschlagen.

Beispiel für Reproduktionscode:

F:\PCS\Documents\Python>type numpytest.py
# -*- coding: utf-8 -*-

import numpy as np
x = np.array([1,2,3])
print(x)
##works fine in python...
python numpytest.py
[1 2 3]



md5-8471f6cd73214bb860e1c999d342677f



## build with pyinstaller, no errors
pyinstaller -F numpytest.py 



md5-751b1907e5a8c901151abcce9d8fb135



>numpytest.exe
Traceback (most recent call last):
  File "f:\python38\lib\site-packages\numpy\core\__init__.py", line 24, in <module>
    from . import multiarray
  File "f:\python38\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 627, in exec_module
    exec(bytecode, module.__dict__)
  File "f:\python38\lib\site-packages\numpy\core\multiarray.py", line 14, in <module>
    from . import overrides
  File "f:\python38\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 627, in exec_module
    exec(bytecode, module.__dict__)
  File "f:\python38\lib\site-packages\numpy\core\overrides.py", line 7, in <module>
    from numpy.core._multiarray_umath import (
ImportError: DLL load failed while importing _multiarray_umath: The specified module could not be found.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "F:\PCS\Documents\Python\numpytest.py", line 9, in <module>
    import numpy as np
  File "f:\python38\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 627, in exec_module
    exec(bytecode, module.__dict__)
  File "f:\python38\lib\site-packages\numpy\__init__.py", line 142, in <module>
    from . import core
  File "f:\python38\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 627, in exec_module
    exec(bytecode, module.__dict__)
  File "f:\python38\lib\site-packages\numpy\core\__init__.py", line 54, in <module>
    raise ImportError(msg)
ImportError:

IMPORTANT: PLEASE READ THIS FOR ADVICE ON HOW TO SOLVE THIS ISSUE!

Importing the numpy c-extensions failed.
- Try uninstalling and reinstalling numpy.
- If you have already done that, then:
  1. Check that you expected to use Python3.8 from "F:\PCS\Documents\Python\dist\numpytest.exe",
     and that you have no directories in your PATH or PYTHONPATH that can
     interfere with the Python and numpy version "1.18.0" you're trying to use.
  2. If (1) looks fine, you can open a new issue at
     https://github.com/numpy/numpy/issues.  Please include details on:
     - how you installed Python
     - how you installed numpy
     - your operating system
     - whether or not you have multiple versions of Python installed
     - if you built from source, your compiler versions and ideally a build log

- If you're working with a numpy git repository, try `git clean -xdf`
  (removes all files not under version control) and rebuild numpy.

Note: this error has many possible causes, so please don't comment on
an existing issue about this - open a new one instead.

Original error was: DLL load failed while importing _multiarray_umath: The specified module could not be found.

[19036] Failed to execute script numpytest

Maßnahmen ergreifen:

deinstalliert und neu installiert numpy.

Numpy/Python-Versionsinformationen:

Python 3.8.1
numpy 1.18.0
PyInstaller 3.5


1.18.0 3.8.1 (tags/v3.8.1:1b293b6, 18. Dezember 2019, 23:11:46) [MSC v.1916 64 Bit (AMD64)]

Weg:
F: Python38Skripte
F: Python38

Hilfreichster Kommentar

Okay, ich habe es gelöst! Dies ist ein Problem mit Conda (Anaconda).
numpy muss per pip neu installiert werden:
pip install --upgrade --force-reinstall numpy

Alle 6 Kommentare

wie #14747
Ich habe die Datei kopiert und es funktioniert

ich habe ein ganz ähnliches Problem. Kann eine neue Frage zu dem Problem öffnen.

Konnte jemand dieses Problem mit der Option --onefile beheben? Ich kann manuell kopieren, wenn dies nicht hinzugefügt wird, und es funktioniert, aber es gibt nirgendwo hin, um es zu kopieren, sobald ich --onefile verwende.

Gibt es einen Workaround?

Okay, ich habe es gelöst! Dies ist ein Problem mit Conda (Anaconda).
numpy muss per pip neu installiert werden:
pip install --upgrade --force-reinstall numpy

Deinstallieren Sie numpy einfach und installieren Sie es erneut. Das Problem wird gelöst.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen