从Windows Shell调用Anaconda Python时导入失败

伊利亚

我想从Windows Shell调用Anaconda Python。目标是最终使用系统调用从MATLAB对其进行调用,因此我必须使用普通的Windows Shell,而不是“ Anaconda提示”。

我有一个想要运行的简单Python脚本,但它不会超出import语句:

> "C:\ProgramData\Anaconda3\python.exe" lhs.py
Traceback (most recent call last): 
  File "lhs.py", line 8, in <module> 
    import numpy 
  File "C:\ProgramData\Anaconda3\lib\site-packages\numpy\__init__.py", line 140, in <module> 
    from . import _distributor_init 
  File "C:\ProgramData\Anaconda3\lib\site-packages\numpy\_distributor_init.py", line 34, in <module> 
    from . import _mklinit 
ImportError: DLL load failed: The specified module could not be found. 

编辑

我做了一个简化的Python脚本(error.py),只包含一行:

import numpy

然后,我将其称为:

"C:\ProgramData\Anaconda3\python.exe" error.py

清醒

TL; DR

C:\ProgramData\Anaconda3\condabin\activate.bat YOURENVIRONMENTNAME && python N:\Temp\lhs.py

长答案

在github报告类似的问题我是通过搜索邮件的最后几行找到的。关于此:

File "C:\Users\hanna\Anaconda3\lib\site-packages\tensorflow\python_init.py",

第47行,在导入numpy中作为np文件“ C:\ Users \ hanna \ Anaconda3 \ lib \ site-packages \ numpy_init_.py”,第140行,来自。导入_distributor_init文件“ C:\ Users \ hanna \ Anaconda3 \ lib \ site-packages \ numpy_distributor_init.py”,位于第34行。导入_mklinit

他们在那里链接到conda故障排除页面
错误消息,例如

英特尔MKL致命错误:无法加载mkl_intel_thread.dll

原因
NumPy无法加载正确的MKL或Intel OpenMP运行时库。这几乎总是由以下两种原因之一引起的:

  1. NumPy的环境尚未激活。

  2. 另一个软件供应商已将MKL或Intel OpenMP(libiomp5md.dll)文件安装到C:\ Windows \ System32文件夹中。这些文件是在Anaconda之前加载的,并且不兼容。  

如果您不激活您的环境,请先执行此操作。


因此,让我们先尝试一下:

C:\\ProgramData\\Anaconda3\\condabin\\activate.bat
conda run -n yourenvironment C:\\path\\to\\your\\pythonfile\\lhs.py

(是的,从普通的cmd终端)

如果这似乎可行,则应该可以使用链接两个命令&&我自己的示例如下所示:

F:\Programme\Programme\Anaconda3\condabin\activate.bat && conda run -n textrecognition N:\Temp\temp.py

这可以进一步简化为

F:\Programme\Programme\Anaconda3\condabin\activate.bat textrecognition && python N:\Temp\temp.py

如果是第二个问题,则可以选择在之前加载conda system32从以下版本开始的anaconda支持此功能:

Python 2.7.15版本14

Python 3.6.8版本7

Python 3.7.2版本8

要激活它,您需要将一些环境变量设置为1:

控制环境变量:

CONDA_DLL_SEARCH_MODIFICATION_ENABLE

CONDA_DLL_SEARCH_MODIFICATION_DEBUG

CONDA_DLL_SEARCH_MODIFICATION_NEVER_ADD_WINDOWS_DIRECTORY

CONDA_DLL_SEARCH_MODIFICATION_NEVER_ADD_CWD

要在Windows上设置变量,可以使用CLI(例如,Anaconda Prompt)或Windows GUI。

CLI:https//superuser.com/questions/79612/setting-and-getting-windows-environment-variables-from-the-command-prompt/79614

GUI: http://www.dowdandassociates.com/blog/content/howto-set-an-environment-variable-in-windows-gui/

这些应设置为1的值以启用它们。例如,在anaconda提示终端中:

set CONDA_DLL_SEARCH_MODIFICATION_ENABLE=1

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

导入_ssl错误,DLL加载失败,Python 37 Anaconda Windows 10

收到错误“ DLL加载失败:找不到指定的模块”。在尝试使用PyCharm在Anaconda中导入Windows的Tensorflow时

运行theano时编译失败-Windows 8.1 64位元(带有Anaconda python发行版)

在Windows上安装python库时出现问题:CondaHTTPError:URL <https://conda.anaconda.org/anaconda/win-64的HTTP 000连接失败

Python 3.7 anaconda环境-导入_ssl DLL加载失败错误

导入matplotlib.pyplot时出错(在Windows 10 Home 64位PC的Anaconda3上)

无法从Windows 10中的python 3 anaconda python中的集合导入计数器

在python,Windows Anaconda中找不到Chromedriver

Windows上Anaconda Python在哪里安装?

Windows上使用Python 3.5 Anaconda的底图

Anaconda Python3.5 Windows Gdal安装

在Anaconda Python(Windows)中安装Matlab引擎

在Windows的anaconda 4.3中,使用python 3.6(64位)的Argparse安装失败

无法从Windows 10 Pro的Anaconda导入sklearn和statsmodels

如果使用anaconda,则在导入boost / c ++时Python崩溃

从python调用Shell脚本

从 python 调用 shell 脚本

Git for Windows Bash shell的“ less”命令在显示来自Git日志调用的格式化文本时显示垃圾

断言失败时的Python unittest调用函数

使用conda从Anaconda导入numpy时出错(DLL加载失败:找不到指定的模块)

从oozie失败的shell脚本调用

从Python 3调用Windows API时无效的句柄

当由Windows Service生成的进程调用CreateMutex()时,失败并显示ERROR_ACCESS_DENIED

在Windows上使用pip成功安装后,Python导入matplotlib失败

为什么在Windows上的Python 3下创建模块后导入失败?

Python 3.5 32位Windows导入模块失败,但pip安装成功

如何在Windows 10中打开Python IDLE(Shell Windows)?

在Windows 10 Anaconda上安装Apache-Airflow时出错

在Windows上通过Anaconda安装适用于Python的OpenCV时出现UnsatisfiableError

TOP 榜单

热门标签

归档