How to run Spyder in virtual environment?
我一直在使用与Anaconda发行版一起安装的Spyder,它默认使用Python 2.7。 目前,我需要使用Python 3.4设置开发虚拟环境。
在线研究后的两个主要建议是:
首先设置虚拟环境并指向更改Spyder的首选项,例如:
在虚拟环境中安装所有Spyder依赖项,如PyQt4,例如: G。 这里 ;
这两个建议都很麻烦,看起来不像是开发的明智选择。
是否有一个解决方案可以在激活所需的虚拟环境后自动运行Spyder所需的Python版本?
可以选择使用所需的Python版本在Anaconda中创建虚拟环境。
1
| conda create -n myenv python=3.4 |
要激活它:
1 2
| source activate myenv # (in linux, you can use . as a shortcut for"source")
activate myenv # (in windows - note that you should be in your c:\anaconda2 directory) |
UPDATE。我用Ubuntu 18.04进行了测试。现在,您必须使用此命令为新环境另外安装spyder(在使用上述命令激活环境之后):
(我还使用pip测试了安装,但是对于Python 3.4或更早版本,它打破了需要手动安装的库依赖性错误。)
现在用Python 3.4运行Spyder只需输入:
-
我看到你正在使用linux。这在Windows 10中对我不起作用。它确实启动了spyder,但是和之前的python 3.4一样(我想要2.7)。
-
我在Windows 7上测试了这个并且它有效。您不需要在开头添加"source"一词来激活环境。要使用Python 2,7,请将设置更改为python = 2.7。
-
在Windows 7中试过这个并没有用。仍然使用普通的python和numpy版本,而不是环境中指定的版本
-
哦,也许你必须先将Spyder安装到该环境中?我用numpy而不是anaconda创建了环境,所以也许它在主环境中运行spyder?
-
这确实是个问题。与ipython相同但在环境中安装后修复了
-
我还发现,在Windows(10)上,刚刚从anaconda环境启动spyder仍然使用我的默认python启动spyder,我不得不首先在anaconda环境中安装spyder以打开spyder与该环境的python。
-
Windows用户还注意:为了正确"激活myenv",你的cmd或powershell应该在anaconda目录中,否则你可能会收到一个无声错误。例如cd c: anaconda2激活myenv conda info -e
-
还要确保conda install -n myenv spyder在该环境中有spyder
-
一年后回到这里。现在我在linux mint(不是windows)但仍然需要在我的anaconda环境中重新安装spyder才能打开spyder从那个env启动带有正确包的spyder
-
我遇到了与conda python 3.5.2环境类似的问题。事实证明,当我使用pip install spyder安装spyder时,它无效。但是当使用conda install spyder时,它工作正常。
-
似乎必须为每个VE安装不同的Spyder实例:否则,将打开基础环境中的Spyder
这是2019年的快速方法。使用Anaconda Navigator:
打开Anaconda Navigator
根据需要创建新环境。我将此环境命名为"test"。单击它以激活它。
转到"主页"并单击Spyder框下的"安装"。
点击"启动/运行"
在设置环境时仍然存在一些小错误(其中大部分都是通过重新启动导航器来解决的),如果发现错误,请将其发布在Anaconda Issues错误跟踪器中。谢谢。
即使这样不起作用,Navigator仍然有用,点击> Enviroments将你带到这个环境中安装的模块的管理窗口,搜索并选择与spyder相关的模块,然后点击Apply将安装它们他们的依赖。
-
如果可能,应将其添加到顶级解决方案中
-
如果您不想乱用命令行,这是一个非常好的解决方案。
-
方式,方式更好。
-
是啊。似乎必须为每个VE安装不同的Spyder实例。
-
我可以从命令行执行此操作吗?每次运行导航器似乎都是拖累......
除了tomaskazemekas的答案:你应该通过以下方式在该虚拟环境中安装spyder:
1
| conda install -n myenv spyder |
(在Windows上,对于Linux或MacOS,您可以搜索类似的命令)
-
Spyder通常作为Anconda Python包列表的一部分安装。仅在miniconda的情况下可能需要额外的安装。
-
恩,那就对了。在我的情况下,我之前安装了我的虚拟环境,它是一个轻量级版本,我只安装了非常必要的软件包。我想有人在我的情况下。
-
@tomaskazemekas先生我安装了miniconda3 :)我怎么能在spyder中运行我的python代码,因为我不知道如何运行spyder?当我在miniconda提示符中键入"spyder"时,"无法识别此命令"会生成错误。
-
@Noman marwat由于spyder不是miniconda的一部分,你必须在使用命令conda install spyder运行之前安装它。
什么对我有用:
从环境中运行spyder(源激活后)
转到工具 - >首选项 - > python Interpreter并从要链接到spyder的env中选择python文件
例如:/ home / you / anaconda3 / envs / your_env / bin / python
研究过ubuntu 16,spyder3,python3.6。
-
这应该是正确的答案。
-
在尝试了所有剩下的这些和其他地方的帖子(两天尝试!)之后,这是唯一可行的解??决方案,以便在Spider中设置适当的环境环境。
-
不需要步骤(1),因为步骤(2)已经将解释器路由到环境。
上面的答案是正确的但我在virtualenv中调用spyder仍然会使用我的PATH在我的默认anaconda env中查找spyder的版本。我发现这个答案给出了以下解决方法:
1 2 3 4
| source activate my_env # activate your target env with spyder installed
conda info -e # look up the directory of your conda env
find /path/to/my/env -name spyder # search for the spyder executable in your env
/path/to/my/env/then/to/spyder # run that executable directly |
我选择了这个,而不是修改PATH或在PATH中以更高的优先级添加可执行文件的链接,因为我觉得这不太可能打破其他程序。但是,我确实在~/.bash_aliases中为可执行文件添加了别名。
我试图让Spyder在虚拟环境中运行时遇到同样的问题。
解决方案很简单:
激活您的虚拟环境。
然后在您的虚拟环境中安装Spyder及其依赖项(PyQt5)。
然后从虚拟环境CLI启动Spyder3。
它现在适合我。
-
这不再适用于ubuntu 16下的python2。任何解决方案的想法?
-
Python 2已弃用。建议并建议使用Python 3升级自己。