我在Anaconda环境中安装了BreakoutDetection模块。当我尝试在jupyter笔记本中使用import breakout_detection
导入模块时,出现以下错误
---------------------------------------------------------------------------
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.
我可以在python shell中导入相同的模块
我查看了系统路径(print sys.path
)以及python shell和jupyter notebook。它们都是一样的。可执行路径(print sys.executable
)对于两者也是相同的。
有人可以帮我解决这个问题需要采取的步骤吗?谢谢!
答案 0 :(得分:29)
我从PowerShell运行jupyter notebook时遇到了相同的问题。即使一年后才问这个问题,我还是在这里回答这个问题,以帮助那些最近遇到相同错误的人。就我而言,首先,我激活了根环境activate base
,然后运行了jupyter notebook
,它运行良好。激活基础后,您会注意到提示将像这样“(base)X:\ Users \ xxxxx \ current-directory-name>”进行更改。
注意,命令activate base
在Powershell上不起作用。您必须切换到运行cmd
的命令提示符,否则
可以在命令提示符而不是PowerShell上尝试整个操作。
如果需要的路径
(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
)
对您的PowerShell环境可用,那么您不需要
激活“基本”环境。
答案 1 :(得分:11)
在Windows中,首先由
在命令提示符下激活根目录(基础)activate root
然后
jupyter notebook
答案 2 :(得分:2)
如果您已经将anaconda添加到PATH变量中,则必须执行以下操作
activate base
jupyter kernelspec list
python -m ipykernel install --user
对我有用
答案 3 :(得分:1)
当我导入sklearn时,我遇到了同样的问题。我猜一些pakages需要升级。所以我只是运行( conda update --all )来升级所有的pakages,它终于奏效了。< / p>
答案 4 :(得分:1)
我最近将Anaconda重新安装到新目录(从D:到C :)。之后,打开并运行PowerShell(在Windows 10中)导致它抛出相同的错误。
通过遵循@picklu的回答,我能够从CMD临时运行它(通过运行“ activate base”,然后运行“ jupyter notebook”)。甚至“激活根目录”也起作用,而不是激活基础。还可以从conda提示符,anaconda导航器和Jupyter Notebook的默认快捷方式运行它。但是,使用这些方法,我无法从打开PowerShell窗口的文件夹开始(通过使用Ctrl + Shift + mouseRightCLick)。
但是,通过遵循@picklu回答的第二部分,我能够成功地将系统变量PATH从旧的D:驱动器更改为当前的C:。
我添加了以下内容:
其中c:\ users \ USERNAME \ anaconda3是anaconda的安装位置。
答案 5 :(得分:0)
如果我们查看Anaconda FAQ,我们会发现不建议将Anaconda添加到Windows PATH。
尽管它应该可以工作,但是手动管理所有必需的路径并不是一件容易的事。举个例子,在撰写本文时,这里没有一个答案具有Anaconda在我的机器上添加的所有路径。我们可以使用os模块获取列表:
对于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']
对于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'])
就我而言,我有以下Anaconda路径:
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;
这仅适用于基本环境。如果您有其他环境,则每个环境都有类似的路径。您是否真的要全部添加,更新它们,并确保在新的Anaconda版本中进行了某些更改后,您没有错过任何内容?
我对此表示怀疑。好消息是您不必这样做。激活环境后,将自动为您配置所有路径。
仅将Scripts
文件夹添加到PATH可能是有用的,以便您可以在没有完整路径的情况下运行activate
。然后为Python解释器或Jupyter Notebook创建一堆.bat/.cmd
文件可能会很方便,这将简化环境激活并允许您使用一个命令完成所有操作。
例如,我的机器上有两个用于Python 2和Python 3解释器的.cmd
文件:
python.cmd :
@echo off
call activate
python %*
python3.cmd :
@echo off
call activate python37
python %*
包含这些文件的文件夹已添加到PATH,因此当我运行python
或python3
命令时,将激活相关的conda环境,并在适当的上下文中启动Python解释器。如果将cmdline参数传递给解释器,它们也将正确转发。可以为Jupyter创建类似的脚本。
答案 6 :(得分:0)
在卸载所有Microsoft Visual Studio C ++可再发行组件之后,我也遇到了此问题。 我安装了 Visual Studio 2015、2017和2019 后,此问题已修复。
上找到它答案 7 :(得分:0)
我尝试了上述所有解决方案,但直到安装了最新版本的Microsoft Visual C++
后,它才对我有用。
答案 8 :(得分:0)
我通过将文件C:\ Anaconda3 \ Libary \ bin \ sqlite3.dll复制到C:\ Anaconda3 \ Dlls来解决了这个问题