将模块(特别是 pymorph)添加到 Spyder(Python IDE)
Posted
技术标签:
【中文标题】将模块(特别是 pymorph)添加到 Spyder(Python IDE)【英文标题】:Adding a module (Specifically pymorph) to Spyder (Python IDE) 【发布时间】:2012-05-30 13:01:39 【问题描述】:我已经设法在我的 Mac 上安装并运行了 spyder,但我想添加一些默认情况下不包含的模块(mahotas 和 pymorph)。
我通过终端中的 easy_install 安装了两者,并且似乎都安装了没有任何错误消息。从终端运行 python 并使用 import mahotas 和 import pymorph 工作得很好,没有错误消息。但是,当我从 spyder 中的脚本运行相同的行时,会出现以下错误:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/spyderlib/widgets/externalshell/sitecustomize.py", line 493, in runfile
execfile(filename, namespace)
File "/Users/Name/Documents/Python/dna.py", line 11, in <module>
import pymorph
ImportError: No module named pymorph
我现在要做的就是运行导入行,就是这样。我似乎找不到任何关于此的信息。我猜 spyder 使用单独的 python 安装,并且通过终端安装模块仅将它们安装到 python 的系统版本。如何将它们添加到 spyder?
规格:
Mac OSX 10.7.4
Spyder 2.1.9
【问题讨论】:
【参考方案1】:好的,还没有人回答这个问题,但我在 spyder 讨论板上发帖后设法弄清楚并让它工作。对于您要添加的任何未包含在 spyder 的默认搜索路径中的库,您需要进入 Tools 并通过PYTHONPATH 管理器。然后,您需要从同一菜单更新模块名称列表并在更改生效之前重新启动 spyder。
【讨论】:
谢谢 - 为我工作。而且,您不需要重新启动 Spyder,只需关闭解释器,然后右键单击并“打开解释器”即可重新启动 python 解释器。使用新路径。 实施此解决方案后,调用 ibpy EReader 文件的任何操作都可能在第 29 行失败,并显示为SyntaxError: cannot assign to None
。如果您收到此删除或注释掉None
。 Reference
在菜单 Spyder/PYTONPATH 管理器下
通过 spyder 的 pythonpath 管理器添加路径后,在我的情况下需要重新启动 anaconda。
哇。这非常不方便......谢谢!【参考方案2】:
在 spyder 的 IPython 控制台上使用!
允许您使用pip
。因此,在示例中,您可以这样做:
[1] !pip install pymorph
注意,这在 Python 控制台上也可用(尽管可能不可靠),用于 ~2.3.3 之前的 Spyder 版本。感谢@CarlosCordoba 的澄清。
【讨论】:
看来您使用的是旧版 Spyder。此功能在某些版本之前已被删除(我认为在 2.3.3 中)。然而,类似的东西仍然适用于 IPython 控制台。 @CarlosCordoba 啊,好的。我使用的是 2.2.5 版。很遗憾它被删除了——尽管它仍然是一个很棒的 IDE :-) 我们不得不从我们的 Python 控制台中删除它,因为它在所有情况下都不能可靠地工作(例如,它在调试时会出现问题)。但是,正如我所说,您可以在我们的 IPython 控制台中运行完全相同的命令,它会正常工作:-) 当我这样做时,我得到/bin/sh: pip: command not found
。在版本 2.3.8
@jkabrg 你有pip
installed吗?【参考方案3】:
在终端中查找模块的位置:
$ python # open python
import pygame # import a module
pygame # get the location
将模块文件夹复制粘贴到“Spyder.app/Contents/Resources/lib/python2.7”
重新启动 Spyder.app
【讨论】:
【参考方案4】:如果您在 Anaconda 包中使用 Spyder...
在 IPython 控制台中,使用
!conda install packageName
这也适用于本地。
!conda install /path/to/package.tar
注意:!在 Spyder 中使用 IPython 控制台时是必需的。
【讨论】:
您也可以运行 Anaconda Prompt 并在那里运行pip install <package_name>
命令,安装完成后您可以从 spyder 控制台重新加载内核 -> 重新启动内核【参考方案5】:
只需使用“!”在 spyder 终端中的 pip 命令之前,它会很好
例如:
!pip install imutils
【讨论】:
【参考方案6】:我在尝试在 Spyder 中添加 seaborn 模块时遇到了同样的问题。我在 ubuntu 14.04 中将 seaborn 安装到我的 anaconda 目录中。如果我添加了包含“seaborn”和 seaborn-0.5.1-py2.7.egg-info 文件夹的整个 anaconda/lib/python2.7/site-packages/ 目录,则会加载 seaborn 模块。问题是这个 anaconda 站点包文件夹还包含许多 Spyder 不喜欢的其他模块。
我的解决方案: 我在我的个人主文件夹中创建了一个新目录,命名为“spyderlibs”,我在其中放置了 seaborn 和 seaborn-0.5.1-py2.7.egg-info 文件夹。在 Spyder 的 PYTHONPATH 管理器中添加我的新 spyderlib 目录有效!
【讨论】:
我很抱歉评论一个旧的答案,但我今天在 Spyder 和 seaborn 上遇到了这个确切的问题,除了你的网站之外,没有任何网站上的一个答案。所以,谢谢。 作为我之前评论的补充(我希望你能看到这个!)你是如何解决 spyder 解释器现在将 seaborn 的 init.py 作为init.py 我要使用的任何内容?在这种情况下,它破坏了 mpfit 和其他一些东西。你有没有找到其他解决方案? 我很高兴它起作用了……在某种程度上。我不记得遇到过 init.py 问题,所以我不确定要推荐什么。我最近安装了一个新的操作系统并新安装了 python 2.7、anaconda 和 spyder。现在 seaborn 奇迹般地从全新的 conda 命令行安装中运行 - 不再需要我上面介绍的解决方法。【参考方案7】:您可以将标准安装位置添加到 PYTHONPATH 管理器。这样您就不需要为每个模块添加特定路径。仅更新模块名称。
在 Unix 上,这个位置通常是:
/usr/local/lib/pythonX.Y/site-packages
在 Windows 上:
C:\PythonXY\Lib\site-packages
见the modules install Documentation.
【讨论】:
【参考方案8】:你可以运行:
pip install pymorph
但是您需要在环境的 anaconda 终端中运行该命令。例如:
【讨论】:
【参考方案9】:试试这个..
从 CMD 获取您的 Python 版本
确保您在 Spyder 内核中使用相同版本
如果版本不同,请从“工具>首选项>Python解释器>”管理安装库的python路径。
【讨论】:
【参考方案10】:将安装了 python 模块的目录添加到 PYTHONPATH 管理器
点击Synchronize
按钮,然后重启内核,你的程序应该可以运行了
【讨论】:
【参考方案11】:也可以按照以下步骤操作: Spyder -> 工具 -> 打开命令提示符 -> 编写命令“pip install html5lib”
【讨论】:
【参考方案12】:这是假设一个 Conda 环境。在高层次上,对我有用的只是在 Spyder 中配置我的 Conda 路径。这是我的做法:
首先,确定你的环境存在的路径
创建您的环境
在 Anaconda 导航器中,单击“环境”,然后在要打开的环境上点击播放按钮。
点击“Open with Python”,您应该会得到一个交互式 Python shell
键入“import numpy”(选择任何包)
键入“numpy”并查看如下所示的路径:
C:\\Users\My Name\\.conda\\envs\\pytorch-three\\lib\\site-packages\\numpy\\__init__.py
重要的部分是一直到site-packages
的路径
为了让 Spyder 能够读取您的包,请在 Spyder 中执行以下操作。
从任何地方打开 Spyder
点击“工具”和“首选项”
在您的 Python 解释器中单击“使用以下 Python 解释器”
从上面的路径中,导航到您的环境并选择 Python 可执行文件。对我来说,它就在这里:C:\\Users\My Name\\.conda\\envs\\pytorch-three\\python.exe
最后,将C:\\Users\\My Name\\.conda\\envs\\pytorch-three\\libs\\site-libs
文件夹添加到路径(将存在于您的环境中)。这可以通过带有“添加到路径”工具提示的 Python 小图标轻松完成
我个人不需要重新启动我的 IDE,但您可能需要。
【讨论】:
【参考方案13】:这符合我在 Spyder 控制台中完成的目的
conda install -c anaconda pyserial
这种格式通常有效,但是 pymorph 这样返回:
conda install -c anaconda pymorph 收集包元数据(current_repodata.json):...工作...完成 求解环境:...工作...失败,初始冻结求解。使用灵活的求解重试。 收集包元数据(repodata.json):...工作...完成 求解环境:...工作...失败,初始冻结求解。使用灵活的求解重试。
注意:您可能需要重新启动内核才能使用更新的软件包。
PackagesNotFoundError:当前频道无法提供以下软件包:
pymorph当前频道:
https://conda.anaconda.org/anaconda/win-64 https://conda.anaconda.org/anaconda/noarch https://repo.anaconda.com/pkgs/main/win-64 https://repo.anaconda.com/pkgs/main/noarch https://repo.anaconda.com/pkgs/r/win-64 https://repo.anaconda.com/pkgs/r/noarch https://repo.anaconda.com/pkgs/msys2/win-64 https://repo.anaconda.com/pkgs/msys2/noarch搜索可能提供您正在使用的 conda 包的替代频道 寻找,导航到
https://anaconda.org
并使用页面顶部的搜索栏。
【讨论】:
以上是关于将模块(特别是 pymorph)添加到 Spyder(Python IDE)的主要内容,如果未能解决你的问题,请参考以下文章
颤振将完成按钮添加到键盘,特别是 CupertinoTextField