Nod*_*ame 14 python numpy pycharm python-3.x
我在Python 3.7中使用Anaconda发行版。在安装的软件包中,我有numpy,pandas等。在PyCharm IDE中,我已将Project Interpreter设置为通过Anaconda安装的python.exe的路径:C:\ Users \ my_user_name \ AppData \ Local \ Continuum \ anaconda3 \ python.exe
但是,当我尝试运行简单的python脚本时:
import numpy as np
print(np.pi)
Run Code Online (Sandbox Code Playgroud)
我收到一个错误:
ImportError:导入多数组numpy扩展模块失败。您极有可能尝试导入失败的numpy构建。如果您使用的是numpy git repo,请尝试git clean -xdf(删除不受版本控制的所有文件)。否则,请重新安装numpy。
原始错误是:DLL加载失败:找不到指定的模块。
请参阅下面的完整错误消息:
追溯(最近一次通话):文件“ C:\ Users \ my_user_name \ AppData \ Local \ Continuum \ anaconda3 \ lib \ site-packages \ numpy \ core__init __。py”,位于第16行。import multiarray ImportError:DLL加载失败:找不到指定的模块。
在处理上述异常期间,发生了另一个异常:
追溯(最近一次通话):文件“ C:/Users/my_user_name/Documents/TestMyApps/simpletest.py”,第1行,在导入numpy中作为np文件“ C:\ Users \ my_user_name \ AppData \ Local \ Continuum \ anaconda3 \ lib \ site-packages \ numpy__init __。py“,第142行,位于。从numpy.lib的第13行,导入add_newdocs文件“ C:\ Users \ my_user_name \ AppData \ Local \ Continuum \ anaconda3 \ lib \ site-packages \ numpy \ add_newdocs.py” import add_newdoc文件“ C:\ Users \ my_user_name \ AppData \ Local \ Continuum \ anaconda3 \ lib \ site-packages \ numpy \ lib__init __。py“,第8行,来自.type_check导入*文件“ C:\ Users \ my_user_name \ AppData \ Local \ Continuum \ anaconda3 \ lib \ “ site-packages \ numpy \ lib \ type_check.py”,第11行,在导入numpy.core.numeric中,以_nx文件“ C:git clean -xdf(删除所有不受版本控制的文件)。否则,请重新安装numpy。
原始错误是:DLL加载失败:找不到指定的模块。
流程以退出代码1完成
我尝试使用Anaconda Prompt卸载和重新安装numpy,方法是:conda卸载numpy,然后:conda安装numpy [我现在有numpy 1.15.4]。重新安装似乎“成功”(至少根据Anaconda Prompt的说法),但是,我在PyCharm中始终遇到错误。
奇怪的是,当我直接进入Anaconda Prompt并输入:
python
import numpy as np
print(np.pi)
Run Code Online (Sandbox Code Playgroud)
我没有任何错误,并且可以看到打印出的正确结果。最初,我以为也许在使用PyCharm时,我以某种方式指向了另一个可执行文件,但是我使用以下命令检入了Anaconda Prompt和Pycharm的Python Console。
sys.executable
Run Code Online (Sandbox Code Playgroud)
它们都显示相同的路径:
'C:\\Users\\my_user_name\\AppData\\Local\\Continuum\\anaconda3\\python.exe'
Run Code Online (Sandbox Code Playgroud)
请注意,在PyCharm中,当我尝试运行不导入任何库的脚本时,或者当导入的库就像sys或os时,脚本运行良好。但是,当我尝试运行其他任何涉及导入某种程度上依赖于numpy的库的脚本时,它也会失败(即,我导入熊猫的脚本等),这些相同的脚本在Anaconda Prompt中也能正常工作。
我在这里不知所措,任何帮助将不胜感激!
Nod*_*ame 28
我实际上已经找到了解决方案。我最初是通过将路径添加到Python可执行目录中的Scripts文件夹中来编辑系统环境变量“ PATH”的。事实证明,这还不够……
我必须为其添加更多路径,这神奇地做到了。
请参阅下面为系统环境变量PATH添加的路径:
C:\Users\<myusername>\AppData\Local\Continuum\Anaconda3\Scripts\
C:\Users\<myusername>\AppData\Local\Continuum\Anaconda3\Library\
C:\Users\<myusername>\AppData\Local\Continuum\Anaconda3\Library\bin\
C:\Users\<myusername>\AppData\Local\Continuum\Anaconda3\Library\mingw-w64\bin\
Run Code Online (Sandbox Code Playgroud)
现在,我不确定我的系统在这4个路径中到底要寻找哪一条。但是,添加此组合肯定对我有用
Dan*_*zes 12
就我而言,conda 没有将包放置在我的 IDE(VS Code)或 pytest 期望的位置。尽管我能够在环境中调用 pytest,但 VS Code 无法 [1] 调试 pytest 模块。我想出了两个解决方案。
code打开 VS Code)VS Code 的 python 扩展上的一个线程告诉我们这是 conda 方面的问题。
[1]:我能够从激活的环境中手动运行 pytest,但是从 VS Code 的调试器启动的 pytest 不知何故不知道 numpy 的位置。在 pytest 函数上启动调试会话后收到的错误消息如下:
_______________________ ERROR collecting test_pytest.py _______________________
ImportError while importing test module 'c:\Users\userFolder\test_pytest.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
..\..\miniconda3\lib\site-packages\numpy\core\__init__.py:22: in <module>
from . import multiarray
..\..\miniconda3\lib\site-packages\numpy\core\multiarray.py:12: in <module>
from . import overrides
..\..\miniconda3\lib\site-packages\numpy\core\overrides.py:7: in <module>
from numpy.core._multiarray_umath import (
E ImportError: DLL load failed while importing _multiarray_umath: The specified module could not be found.
During handling of the above exception, another exception occurred:
..\..\miniconda3\lib\importlib\__init__.py:127: in import_module
return _bootstrap._gcd_import(name[level:], package, level)
test_pytest.py:2: in <module>
import numpy
..\..\miniconda3\lib\site-packages\numpy\__init__.py:140: in <module>
from . import core
..\..\miniconda3\lib\site-packages\numpy\core\__init__.py:48: in <module>
raise ImportError(msg)
E ImportError:
E
E IMPORTANT: PLEASE READ THIS FOR ADVICE ON HOW TO SOLVE THIS ISSUE!
E
E Importing the numpy C-extensions failed. This error can happen for
E many reasons, often due to issues with your setup or how NumPy was
E installed.
E
E We have compiled some common reasons and troubleshooting tips at:
E
E https://numpy.org/devdocs/user/troubleshooting-importerror.html
E
E Please note and check the following:
E
E * The Python version is: Python3.8 from "C:\Users\userFolder\miniconda3\python.exe"
E * The NumPy version is: "1.19.2"
E
E and make sure that they are the versions you expect.
E Please carefully study the documentation linked above for further help.
E
E Original error was: DLL load failed while importing _multiarray_umath: The specified module could not be found.
Run Code Online (Sandbox Code Playgroud)
通过添加以下给定路径来编辑您的系统环境变量“PATH”(请参阅此处的步骤)。
注意:如果您已经安装了 numpy,请按照此步骤操作。
If using anaconda:
C:\Users\<username>\AppData\Local\Continuum\Anaconda<version>\Library\bin\
If using independent python interpreter:
C:\Users\<username>\AppData\Roaming\Python\Python<version>\Library\bin
Run Code Online (Sandbox Code Playgroud)
小智 5
获取 os 环境路径,如:
import os
os.environ['PATH']
Run Code Online (Sandbox Code Playgroud)
现在,将此路径添加到PATHpycharm 调试器/控制台输出中的环境变量。有用。
| 归档时间: |
|
| 查看次数: |
9770 次 |
| 最近记录: |