【问题标题】:Windows VS Code can't find numpy Module even though it is installed (ModuleNotFoundError: No module named 'numpy.core._multiarray_umath')即使安装了 numpy Module,Windows VS Code 也找不到(ModuleNotFoundError: No module named 'numpy.core._multiarray_umath')
【发布时间】:2021-04-20 12:35:44
【问题描述】:

我一直在我的 Windows 上使用 Anaconda 和 VS Code,一切都很好,直到我的电脑崩溃了。在那之后,我无法运行以前运行良好的脚本。

例如,我现在在运行时遇到错误:

import os
import datetime

import IPython
import IPython.display
import matplotlib as mpl
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
import seaborn as sns
import tensorflow as tf
from tensorflow import keras
from pmdarima import auto_arima
from kerastuner import HyperModel, Objective
from kerastuner import BayesianOptimization
import keras.backend as K
from tensorflow.keras.layers import (
    Dense,
    Dropout,
    LSTM,
    GRU
)


mpl.rcParams['figure.figsize'] = (8, 6)
mpl.rcParams['axes.grid'] = False

C:\Users\myname\AppData\Local\Programs\Python\Python39\lib\site-packages\numpy\__init__.py:138: UserWarning: mkl-service package failed to import, therefore Intel(R) MKL initialization ensuring its correct out-of-the box operation under condition when Gnu OpenMP had already been loaded by Python process is not assured. Please install mkl-service package, see http://github.com/IntelPython/mkl-service
  from . import _distributor_init
---------------------------------------------------------------------------
ModuleNotFoundError                       Traceback (most recent call last)
~\AppData\Local\Programs\Python\Python39\lib\site-packages\numpy\core\__init__.py in <module>
     21 try:
---> 22     from . import multiarray
     23 except ImportError as exc:

~\AppData\Local\Programs\Python\Python39\lib\site-packages\numpy\core\multiarray.py in <module>
     11 
---> 12 from . import overrides
     13 from . import _multiarray_umath

~\AppData\Local\Programs\Python\Python39\lib\site-packages\numpy\core\overrides.py in <module>
      6 
----> 7 from numpy.core._multiarray_umath import (
      8     add_docstring, implement_array_function, _get_implementing_args)

ModuleNotFoundError: No module named 'numpy.core._multiarray_umath'

During handling of the above exception, another exception occurred:

ImportError                               Traceback (most recent call last)
<ipython-input-1-aaaeab3b7b86> in <module>
      4 import IPython
      5 import IPython.display
----> 6 import matplotlib as mpl
      7 import matplotlib.pyplot as plt
      8 import numpy as np

~\AppData\Local\Programs\Python\Python39\lib\site-packages\matplotlib\__init__.py in <module>
    105 # cbook must import matplotlib only within function
    106 # definitions, so it is safe to import from it here.
--> 107 from . import cbook, rcsetup
    108 from matplotlib.cbook import MatplotlibDeprecationWarning, sanitize_sequence
    109 from matplotlib.cbook import mplDeprecation  # deprecated

~\AppData\Local\Programs\Python\Python39\lib\site-packages\matplotlib\cbook\__init__.py in <module>
     26 import weakref
     27 
---> 28 import numpy as np
     29 
     30 import matplotlib

~\AppData\Local\Programs\Python\Python39\lib\site-packages\numpy\__init__.py in <module>
    138     from . import _distributor_init
    139 
--> 140     from . import core
    141     from .core import *
    142     from . import compat

~\AppData\Local\Programs\Python\Python39\lib\site-packages\numpy\core\__init__.py in <module>
     46 """ % (sys.version_info[0], sys.version_info[1], sys.executable,
     47         __version__, exc)
---> 48     raise ImportError(msg)
     49 finally:
     50     for envkey in env_added:

ImportError: 

IMPORTANT: PLEASE READ THIS FOR ADVICE ON HOW TO SOLVE THIS ISSUE!

Importing the numpy C-extensions failed. This error can happen for
many reasons, often due to issues with your setup or how NumPy was
installed.

We have compiled some common reasons and troubleshooting tips at:

    https://numpy.org/devdocs/user/troubleshooting-importerror.html

Please note and check the following:

  * The Python version is: Python3.9 from "C:\Users\myname\AppData\Local\Programs\Python\Python39\python.exe"
  * The NumPy version is: "1.19.2"

and make sure that they are the versions you expect.
Please carefully study the documentation linked above for further help.

Original error was: No module named 'numpy.core._multiarray_umath'

我已经阅读了多个帖子,但找不到解决方案。我尝试了多种方法:

  • 我已经卸载并重新安装了 anconda

  • 我已将 C:\Users\myname\AppData\Local\Programs\Python\Python39 添加到我的系统变量路径中

  • 使用 pip 卸载 numpy,然后使用 conda 安装 numpy

  • 在 VS 代码中将我的 python 路径设置为 C:\Users\myname\AppData\Local\Programs\Python\Python39 (pythn 版本 3.9.4) 或 C:\Users\myname\anaconda3 (Python 版本 3.8.5 )

  • 我转到错误消息中提到的链接但找不到解决方案

  • 试图升级我的 numpy 版本(我有 1.20.2)

    (pip install numpy --upgrade 要求已经是最新的:c:\users\myname\anaconda3\lib\site-packages (1.20.2) 中的 numpy)

  • Python 版本:3.8.5 和 3.9.4(都试过了)

  • Numpy 版本:1.20.1

  • Matplotlib 版本:3.4.1

这个

import os
print(sys.version)
print("PYTHONPATH:", os.environ.get('PYTHONPATH'))
print("PATH:", os.environ.get('PATH'))

导致这个输出:

3.9.4 (tags/v3.9.4:1f2e308, Apr  6 2021, 13:40:21) [MSC v.1928 64 bit (AMD64)]
PYTHONPATH: c:\Users\myname\.vscode\extensions\ms-toolsai.jupyter-2021.5.745244803\pythonFiles;c:\Users\myname\.vscode\extensions\ms-toolsai.jupyter-2021.5.745244803\pythonFiles\lib\python
PATH: C:\Users\myname\anaconda3;C:\Users\myname\anaconda3\Library\mingw-w64\bin;C:\Users\myname\anaconda3\Library\usr\bin;C:\Users\myanme\anaconda3\Library\bin;C:\Users\myname\anaconda3\Scripts;C:\Users\myname\anaconda3\bin;C:\Users\myname\anaconda3\condabin;C:\Users\myname\anaconda3;C:\Users\myname\anaconda3\Library\mingw-w64\bin;C:\Users\myname\anaconda3\Library\usr\bin;C:\Users\myname\anaconda3\Library\bin;C:\Users\myname\anaconda3\Scripts;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0;C:\Windows\System32\OpenSSH;C:\Program Files\MATLAB\R2020a\bin;C:\Users\myname\AppData\Local\Programs\Python\Python39;C:\Users\myname\AppData\Local\Microsoft\WindowsApps;C:\Users\myname\AppData\Local\Programs\Microsoft VS Code\bin;C:\Users\myname\AppData\Local\Programs\MiKTeX\miktex\bin\x64;C:\Users\myname\AppData\Local\Programs\Git\cmd;C:\Program Files (x86)\GitHub CLI;C:\Users\myname\AppData\Local\GitHubDesktop\bin

提前感谢您的帮助!

【问题讨论】:

    标签: python windows numpy anaconda


    【解决方案1】:

    这里有很多事情要做,包括 Python 的多个安装。看起来您既有 Python 的 Anaconda 安装,也有标准的 Python 安装。

    我的第一个建议是使用虚拟 Python 环境。这些创建了隔离的环境,您可以在其中安装软件包,而不必担心会弄乱您的基本安装。有几种方法可以做到这一点,Anaconda 带有 Conda,Python 带有 venv。两者都运作良好。我更喜欢康达。

    第 1 步 - 标准 Python 安装中的一个或多个包已损坏或不兼容;我建议完全卸载。

    -- Windows 键 > 设置(齿轮图标)> 应用程序 > 点击 Python > 卸载

    第 2 步 - 假设您的 Anaconda 安装也没有损坏,我们可以使用 Conda 创建一个新环境。

    -- Windows Key > "Anaconda Prompt" > 这将打开一个带有基本 Anaconda 环境的终端。

    conda create -n myenv python tensorflow ipython matplotlib pandas seaborn numpy -y
    

    第 3 步 - 激活环境以使用它并安装 PyPi 包。

    conda activate myenv
    pip install pmdarima
    

    【讨论】:

    • 感谢您的回答@James!我尝试了您建议的步骤,当我在 VS Code 中运行我的 Python 文件时,它现在说“Python 3.8.8 64-bit ('myenv': conda) 需要安装 ipykernel。”。如果我安装它,我会收到与以前相同的错误消息。我确保我的 python 解释器也是 myenv 环境。
    【解决方案2】:

    就像魔术一样,但是在应用@James 提到的步骤、重新启动我的笔记本电脑、禁用和重新启用 VS Code 中的所有扩展以及在启动 VS Code 之前在 Anaconda 本身中将环境设置为 myenv 之后,它现在终于可以工作了。不知道究竟是什么造成了差异。再次感谢@James 的帮助!

    【讨论】:

      猜你喜欢
      • 2022-06-12
      • 2019-11-29
      • 1970-01-01
      • 2022-10-22
      • 2022-08-24
      • 2019-02-07
      • 2023-01-20
      • 2022-11-08
      • 1970-01-01
      相关资源
      最近更新 更多