为啥我在终端上安装的软件包不能在 Spyder 上运行
Posted
技术标签:
【中文标题】为啥我在终端上安装的软件包不能在 Spyder 上运行【英文标题】:Why won't packages I have installed in the terminal run on Spyder?为什么我在终端上安装的软件包不能在 Spyder 上运行 【发布时间】:2021-11-13 17:21:17 【问题描述】:我使用 Jupyter notebook 已经有一段时间了,它运行良好,我今天尝试下载 Spyder,但我在终端上安装的很多软件包都无法在 Spyder 上运行,例如 pandas_datareader 在 Jupyter notebook 中运行良好,但它无法在 Spyder 上运行我在尝试导入时收到未找到模块的错误。我尝试更新软件包以及删除然后重新安装,但它仍然无法正常工作。我从 spyder-ide.org 网站下载了 Spyder。感谢您提供的任何帮助。
【问题讨论】:
你可能安装了两个 Python,你可以在一个 Python 中安装模块,而 Spyder 可以使用另一个 Python。 Python 不共享模块。在Spyder
和Jupyter
中运行Spyder
和Jupyter
import sys
print( sys.executable )
,您将看到Python
的完整路径,然后您可以使用/full/path/to/python -m pip install ...
在选定的Python 中安装模块。如果您可以设置项目中使用的 Python 的路径,您还可以检查 Spyder 的设置 - 这样您可以更改 Python 并在不同的项目中使用不同的 Python(即在项目中使用 virtual environments
)
【参考方案1】:
这是常见的问题。
您可能安装了两个 Python,并且您将 Jupyter
与一个 Python 一起使用,但 Spyder
可能使用其他 Python。
不同的 Python 不共享模块。
在Spyder
和Jupyter
中运行
import sys
print( sys.executable )
查看Spyder
和Jupyter
中使用的Python的完整路径,然后您可以使用
/full/path/to/python -m pip install ...
在正确的 Python 中安装模块。
如果您可以设置项目中使用的 Python 的路径,您也可以检查 Spyder 的设置 - 这样您就可以更改 Python 并使用已安装模块的版本。这样,您还可以在不同的项目中使用不同的 Python(具有不同的模块)(即在项目中使用虚拟环境 - venv
)
我认为 Jupyter
并不意味着 Google Colab 在 Google 的服务器上运行 Jupyter
并在此服务器上安装模块 - 但 Spyder 在本地计算机上运行。
【讨论】:
以上是关于为啥我在终端上安装的软件包不能在 Spyder 上运行的主要内容,如果未能解决你的问题,请参考以下文章
尽管安装了 Spyder-Terminal,但 Spyder 5 中没有终端
为啥我不能从 Spyder 导入 scikit-learn,但我可以从命令行导入?
Spyder 5.0.5 (MacOS) 上没有 Spyder 终端
在spyder 4上安装spyder_autopep8并使其正常工作