如何在Anaconda中使用Python 3.7运行Spyder?

7

我已经在一台运行Windows 10的机器上安装了Anaconda,其中包括Spyder和Python 3.6,但我希望升级到Python 3.7。

要使用Python 3.7创建一个Anaconda环境很容易,只需使用以下命令:

conda create --name py37 python=3.7

或者:

conda create --name py370 python=3.7.0 --channel conda-forge

然而,在此环境中启动Spyder会将其返回到Python 3.6。我尝试在Spyder的“工具->设置”中直接指定python.exe(用于版本3.7),然而,重新启动后,Spyder内核无法启动,并显示它们需要以下软件包:ipykernelcloudpickle。当尝试在环境中运行conda install时,会出现以下情况:
The following packages will be DOWNGRADED:

    python:           3.7.0-hea74fb7_0      --> 3.6.6-hea74fb7_0

这将把Python版本从3.7降级到3.6。

我的最后一次尝试是使用以下命令:

conda install python==3.7

该输出已经失败

Solving environment: failed

UnsatisfiableError: The following specifications were found to be in conflict:
  - python-dateutil -> python[version='>=2.7,<2.8.0a0']
  - python-dateutil -> six
  - python==3.7
Use "conda info <package>" to see the dependencies for each package.

问题不在于如何将Conda升级到Python 3.7,而在于如何让Spyder在其自己的环境中与Python 3.7配合工作。
1个回答

16
当您从CMD/终端运行spyder时,操作系统将尝试在系统的PATH上找到spyder可执行文件。 在这种情况下,它将默认返回基础环境中运行Python 3.6的spyder版本。
目前我发现最好的方法是将spyder安装到新环境中;激活该环境,然后运行spyder(应该会启动本地环境中的版本)。
conda create --name py37 python=3.7  
conda install --name py37 spyder -c conda-forge
conda activate py37
spyder

然而,这需要Spyder的版本支持Python 3.7。目前(截至2018年7月2日)还不可用,但应该很快就会推出。

编辑: Python 3.7的Spyder可用。


6
Spyder维护者在此) @Kev1n91,目前不可能实现,因为Anaconda尚未发布适用于Python 3.7的Spyder及其依赖项的软件包。 - Carlos Cordoba
1
谢谢您的回答,我们非常有兴趣测试新功能,是否有关于Anaconda何时发布所需的软件包的信息? - Kev1n91
1
我刚刚尝试了一下,截至7月24日,它可以正常工作:现在有一个spyder版本3.3.0-py37_0和spyder-kernels 0.2.4-py37_0可用。 - juandesant
我使用Spyder 3.3.2和Python 3.7.2时经常出现内核问题。将Python降级到3.6.8解决了这个问题。 - Tung
这仍然不起作用,我需要运行Python 3.7,并按照以下代码 - 它仍然启动Python 3.8。 - Ben Watson
显示剩余3条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接