Ich habe BreakoutDetection das Modul in der Anaconda-Umgebung installiert. Wenn ich versucht habe, das Modul mit import breakout_detection
in Jupyter Notebook zu importieren, erhalte ich die folgende Fehlermeldung
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
<ipython-input-18-96c0fdb15b96> in <module>()
----> 1 import breakout_detection
C:\Users\sgadiyar\AppData\Local\Continuum\Anaconda2\lib\site-packages\breakout_detection.py in <module>()
15 except ImportError:
16 return importlib.import_module('_breakout_detection')
---> 17 _breakout_detection = swig_import_helper()
18 del swig_import_helper
19 Elif _swig_python_version_info >= (2, 6, 0):
C:\Users\sgadiyar\AppData\Local\Continuum\Anaconda2\lib\site-packages\breakout_detection.py in swig_import_helper()
14 return importlib.import_module(mname)
15 except ImportError:
---> 16 return importlib.import_module('_breakout_detection')
17 _breakout_detection = swig_import_helper()
18 del swig_import_helper
C:\Users\sgadiyar\AppData\Local\Continuum\Anaconda2\lib\importlib\__init__.pyc in import_module(name, package)
35 level += 1
36 name = _resolve_name(name[level:], package, level)
---> 37 __import__(name)
38 return sys.modules[name]
ImportError: DLL load failed: The specified procedure could not be found.
Ich könnte das gleiche Modul in Python Shell importieren
Ich habe mir die Systempfade (print sys.path
) und die Python-Shell und das Jupyter-Notebook angesehen. Sie sind beide gleich. Der ausführbare Pfad (print sys.executable
) ist für beide gleich.
Kann mir jemand bei den Schritten helfen, die ich zur Behebung dieses Problems ergreifen sollte? Vielen Dank!
Ich habe das gleiche Problem beim Ausführen eines Jupyter-Notebooks von PowerShell festgestellt. Obwohl die Frage vor einem Jahr gestellt wurde, beantworte ich sie hier, um denjenigen zu helfen, die in letzter Zeit den gleichen Fehler feststellen. In meinem Fall habe ich zuerst die Root-Umgebung activate base
aktiviert, dann lief ich jupyter notebook
und es hat gut funktioniert. Sobald Sie die Basis aktiviert haben, werden Sie feststellen, dass sich die Aufforderung wie folgt ändert "(Basis) X:\Benutzer\xxxxx\Name des aktuellen Verzeichnisses>".
Beachten Sie dass der Befehl activate base
auf Powershell nicht funktioniert. Sie müssen zur Eingabeaufforderung wechseln, die cmd
ausführt, oder Sie Können das Ganze mit der Eingabeaufforderung anstelle von PowerShell versuchen.
Wenn die erforderlichen Pfade
(path:\to\Anaconda3\;path:\to\Anaconda3\Scripts;path:\to\Anaconda3\Library\mingw-w64\bin;path:\to\Anaconda3\Library\usr\bin;path:\to\Anaconda3\Library\bin
) sind für Ihre PowerShell-Umgebung verfügbar, dann brauchen Sie dies nicht
aktivieren Sie die "Basis" -Umgebung.
In Windows aktiver Stamm (Basis) im Befehl Eingabeaufforderung zuerst von
activate root
dann
jupyter notebook
Wenn Sie der PATH-Variablen bereits Anaconda hinzugefügt haben, müssen Sie Folgendes tun
activate base
jupyter kernelspec list
python -m ipykernel install --user
Es hat für mich funktioniert
Ich habe Anaconda kürzlich in einem neuen Verzeichnis (von D: bis C :) neu installiert. Nach dem Öffnen und Ausführen von PowerShell (in Windows 10) wurden dieselben Fehler ausgelöst.
Indem ich der Antwort von @picklu folgte, konnte ich sie temporär vom CMD aus ausführen (durch Ausführen von 'enable base' und dann 'jupyter notebook'). Sogar "root aktivieren" funktionierte anstelle der Aktivierungsbasis. Auch das Ausführen von Conda Prompt, Anaconda Navigator und der Standard-Verknüpfung für Jupyter Notebook funktionierte. Mit diesen Methoden konnte ich jedoch nicht mit dem Ordner beginnen, in dem ich das PowerShell-Fenster geöffnet hatte (mit Strg + Umschalttaste + mouseRightCLick).
Durch den zweiten Teil der Antwort von @picklu konnte ich jedoch die Systemvariable PATH erfolgreich vom alten Laufwerk D: auf das aktuelle Laufwerk C: ändern.
Ich habe folgendes hinzugefügt:
dabei ist c:\users\USERNAME\anaconda3 der Installationsort der Anaconda.
Ich traf das gleiche Problem, wenn ich sklearn importiere. Ich denke, einige Pakete müssen upgrated werden. Deshalb renne ich gerade ( conda update --all ), um alle Pakete aufzuwerten, und es hat endlich funktioniert.
Wenn wir uns Anaconda FAQ ansehen, können wir feststellen, dass es nicht empfehlenswert ist, Anaconda zum Windows-PFAD hinzuzufügen.
Obwohl es funktionieren sollte, ist es nicht einfach und unkompliziert, alle benötigten Pfade manuell zu verwalten. Zum Beispiel hat keine der Antworten hier zum Zeitpunkt meines Schreibens alle Pfade, die Anaconda auf meiner Maschine hinzufügt. Wir können die Liste mit dem os-Modul bekommen:
Für Python 2:
Python 2.7.15 |Anaconda, Inc.| (default, Feb 21 2019, 11:55:13) [MSC v.1500 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> print os.environ['PATH']
Für Python 3:
Python 3.7.2 (default, Feb 21 2019, 17:35:59) [MSC v.1915 64 bit (AMD64)] :: Anaconda, Inc. on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> print(os.environ['PATH'])
In meinem Fall habe ich die folgenden Anaconda-Pfade:
C:\Anaconda;
C:\Anaconda\Library\mingw-w64\bin;
C:\Anaconda\Library\usr\bin;
C:\Anaconda\Library\bin;
C:\Anaconda\Scripts;
C:\Anaconda\bin;
C:\Anaconda\condabin;
Und das ist nur für die Basisumgebung. Wenn Sie über zusätzliche Umgebungen verfügen, gibt es für jede davon ähnliche Pfade. Möchten Sie sie wirklich alle hinzufügen, aktualisieren und sicherstellen, dass Sie keine verpasst haben, wenn sich mit der neuen Anaconda-Version etwas ändert?
Das bezweifle ich. Und die gute Nachricht ist, dass Sie nicht müssen. Alle Pfade werden automatisch für Sie konfiguriert, wenn Sie die Umgebung aktivieren.
Es ist möglicherweise nur sinnvoll, den Ordner Scripts
zu PATH hinzuzufügen, damit Sie activate
ohne vollständigen Pfad ausführen können. Und dann kann es nützlich sein, eine Reihe von .bat/.cmd
- Dateien für Python Interpreter oder Jupyter Notebook zu erstellen, um die Aktivierung der Umgebung zu vereinfachen und alles mit einem Befehl zu erledigen.
Zum Beispiel habe ich zwei .cmd
- Dateien für Python 2 und Python 3 Interpreter auf meinem Computer:
python.cmd :
@echo off
call activate
python %*
python3.cmd :
@echo off
call activate python37
python %*
Ein Ordner mit diesen Dateien wird PATH hinzugefügt. Wenn ich also den Befehl python
oder python3
Ausführe, wird die entsprechende Conda-Umgebung aktiviert und der Interpreter Python gestartet Wenn Sie dem Interpreter cmdline-Parameter übergeben, werden diese ebenfalls korrekt weitergeleitet. Ähnliche Skripte können für Jupyter erstellt werden.