如果我重置我的环境(如下所示),我无法从python导入numpy,但我可以导入任何其他模块,包括wxPython。
import os
# reset environment
os.environ = {}
# Numpy here will fail!
import numpy
导入将失败并显示以下消息
ImportError:导入多阵列numpy扩展模块失败。 您很可能正在尝试导入失败的numpy版本。如果 你正在使用一个numpy git repo,试试
git clean -xdf
(删除 所有不受版本控制的文件)。否则重新安装numpy。原始错误是:DLL加载失败:指定的模块不能 找到。
有谁知道如何解决这个问题或为什么会发生这种情况?
P.S。这不适用于Windows,但适用于Linux。
进度:
Windows上的Python无法加载,因为它无法找到libopenblas.dll文件。如果我执行以下操作,它似乎可以正常工作
import ctypes
ctypes.cdll.LoadLibrary(r"C:\python27\lib\site- packages\numpy\.libs\libopenblas.BNVRK7633HSX7YVO2TADGR4A5KEKXJAW.gfortran- win_amd64.dll")
import numpy
但是有没有办法设置环境变量以便不需要这样做?
将os.environ设置为{}可能不会重置或更改环境,但我不确定这一点。
Windows需要' SYSTEMROOT':' C:\ Windows'因某种原因而被设定......
一旦满足这两个要求,则导入工作