Spacemacs怎么选择执行的Python版本

问题一: Spacemacs执行Python时,为什么默认选择调用的ipython与cmd默认执行的ipython版本不一样? Spacemacs是不是默认从.spacemacs.env内路径寻找?文件里PATH怎么加入有空格的路径?(加不加引号都不行)

问题二: 另外请教各位,为什么在spider能正常运行代码,Spacemacs和cmd调用ipython执行“from scipy import stats”会出错? 备注:Windows7下安装了Anaconda(ipython 7.21)和单独的Python(iPython 7.17)。cmd默认调用iPython7.17可以正常执行,为什么Spacemacs又会默认调用了Anaconda下的ipython7.21,并且出错?

是的,加转义\?但其实 .spacemacs.env 不应该直接编辑,应该通过 spacemacs/force-init-spacemacs-env 更新。

同样是上面的路径问题。

谢谢您的解答,您可以将spacemacs/force-init-spacemacs-env写个示例行吗?我的init.el中没有这个设置,网上也没搜到。

我直接编辑的.spacemacs.env也试过用\转义空格,但无效。而且,除了Python,其余的路径含有空格貌似没有关系,我的.spacemacs.env文件中PATH如下:

PATH=C:\Program Files (x86)\Common Files\Intel\Shared Libraries\redist\intel64\mpirt;C:\Program Files (x86)\Common Files\Intel\Shared Libraries\redist\intel64\compiler;C:\windows\system32;C:\windows;C:\windows\System32\Wbem;C:\windows\System32\WindowsPowerShell\v1.0;D:\Program Files\Git\cmd;D:\Program Files\Gow\bin;D:\Program Files\JetBrains\PyCharm Community Edition 2020.2\bin;d:\Program Files\Python38;“d:\Program Files\Python38\Scripts”;e:\lxs\anaconda3;e:\lxs\anaconda3\Scripts;e:\lxs\anaconda3\Library\bin;

看上传的图片,spider应该和Spacemacs调用了同样7.21版本的ipython,但不知道为什么spider中可以正常执行,Spacemacs出错?

spacemacs/force-init-spacemacs-env 是自带的函数,.spacemacs.env 应该也有说明才对,https://github.com/syl20bnr/spacemacs/blob/develop/core/core-env.el#L121

1 个赞

后面这个有点乱,我看你截图中大的 cmd 和 spider 用的 Python 版本应该是一样的,也没法执行,那你就先别考虑 Spacemacs 中的情况。

你这路径里面 Python38 在 Anconda 之前,按理说如果正常所有的应该都用的是前面那个,不过不排除你的项目有啥设置,比如说 Spyder 设了啥,Spacemacs conda 或者别的 env package 自动加载了啥。