满足要求,但无法在 jupyter notebook 中导入库

Requirements are satisified, but unable to import libraries in jupyter notebook

我想在 jupyter 中导入 numpy 和 pandas 但我收到消息:

----> 1 import pandas as pd

ModuleNotFoundError: No module named 'pandas'

现在,当我打开 anaconda 提示符并执行 pip list 时,我可以看到最新版本的 numpy

即使我说 pip install 它说要求已经满足。

我知道这在某种程度上与 python 的路径有关。

老实说,作为一个有数学背景学习如何编码的人,我真的不确定这意味着什么以及我如何检查和修复路径是否正确。

它是否仅表示 jupyter 查找 python.exe 的位置?我不确定在哪里检查这个。

where python 在 Anaconda 提示中给我:

C:\Users\MyName\Anaconda3\python.exe
C:\Program Files\Python37\python.exe

当我在 jupyter notebook 上 运行 时:

from jupyter_core.paths import jupyter_data_dir
print(jupyter_data_dir())

我得到:

C:\Users\NyName\AppData\Roaming\jupyter

这是问题的根源吗?

所以我找到的解决方案是简单地使用 pip install 是不正确的。

This link 此处显示了必须完成的方式。通过使用命令: !{sys.executable} -m pip install numpy

我能够正确导入并使用该包。

如果有人能帮助我理解这个命令是如何工作的,那将非常有帮助。这已经解决了我的问题,但我真的不知道为什么或如何。

问题是您的 Jupyter 内核使用的 Python 与 Anaconda 提示符中的内核不同。

如果你不使用虚拟环境,你应该开始。要制作一个,请打开 Anaconda 提示符并执行此操作(将名称 myenv 更改为您喜欢的任何名称):

conda create -n myenv python=3.7 jupyter matplotlib pandas

如果需要,也可以更改 Python 或其他软件包的版本。

完成后,切换到该环境:

conda activate myenv

现在这样做:

python -m ipykernel install --user --name myenv

这会为此环境添加一个 Jupyter 内核。 您只需在创建环境后执行此操作一次。

现在重新启动 Jupyter notebook 或 Jupyter lab 或其他。或者,如果需要,可以在此环境中安装更多东西。您可以像这样使用 pip

pip install awesomepackage

您现在应该在 Kernel > Change kernelNew 下看到您的环境制作新笔记本时。

请原谅我,如果您知道所有这些,但这是我能够保持环境正常并确切知道我安装东西的唯一方法。祝你好运!