如何将 conda 库导入单独的 Spyder 发行版?

Posted

技术标签:

【中文标题】如何将 conda 库导入单独的 Spyder 发行版?【英文标题】:How can I import a conda library into a seperate Spyder distribution? 【发布时间】:2022-01-05 05:18:05 【问题描述】:

我最近在我的 MacBook 上安装了 Spyder 2。然后,由于我无法导入 sklearn 库,我决定也从他们的网站下载 Anaconda。现在,Anaconda 自带了一个 Spyder 环境,我可以在其上导入 sklearn,但是 IDE 是滞后的。有没有办法在我单独下载的 Spyder(运行更流畅)上使用 conda sklearn 库?两个 Spyder 都运行 Python 3.9.5,而我使用的是 MacOs 10.15.7

我尝试通过 PYTHONPATH 管理器设置路径,但 Spyder 2 禁止设置“站点包”的路径,并且在将 sklearn 复制到另一个文件夹并在那里设置路径后,导入失败:

ModuleNotFoundError: No module named 'joblib'

我还在终端上通过 pip 安装了 sklearn,但是如果我尝试在单独的 Spyder 2 中导入 sklearn('找不到名为 sklearn 的模块'或者我无法在那里设置路径),我会遇到同样的问题或缺少某些模块)。 如果我尝试运行

pip install scikit-learn

直接在IPython控制台中,我得到

/Applications/Spyder 2.app/Contents/MacOS/python: No module named pip

如果我尝试

conda install scikit-learn

在我得到的 IPython 控制台中

ValueError: The python kernel does not appear to be a conda environment. Please use ``%pip install`` instead.

所以我好像在兜圈子……

【问题讨论】:

【参考方案1】:
    condapip 是可执行文件,不能从 IPython 控制台运行,而是从命令 shell 运行。 如果没有必要,不要混合使用 conda 和 pip 安装。仅使用 conda 安装 scikit-learn。 在您可以使用任何安装之前,您必须先使用conda activate激活基础环境。 首先阅读文档并不丢人,例如https://docs.anaconda.com/anaconda/user-guide/getting-started/

【讨论】:

您可以在 iPythonjupyter 控制台前运行 condapip,方法是在其前面加上 ! 即使我将默认环境更改为 conda,重新启动内核并运行conda activate,我仍然得到ValueError: The python kernel does not appear to be a conda environment. 我不明白这与通过 Anaconda Navigator 启动的 Spyder 之间的区别,它工作正常的地方。可悲的是,文档在这一点之外没有帮助。

以上是关于如何将 conda 库导入单独的 Spyder 发行版?的主要内容,如果未能解决你的问题,请参考以下文章

Spyder 无法在 conda 环境中加载 tensorflow,尽管 python 可以

如何使用 conda 环境为 anaconda spyder 设置不同的桌面启动器?

如何使用 Spyder 版本 5 和 mini conda 的独立版本更新环境中的所有包?

conda install sklearn_crfsuite 在 spyder 中不起作用

无法在 Spyder 上导入 CV2 (Python 3.7)

conda:启动 spyder 时缺少依赖项(cahe 问题?)