我正在使用 VSCodes 终端窗格。我激活 conda 环境。由于某种原因,python
命令仍设置为/usr/bin/python
,而不是 conda 环境的正确路径。
% conda activate myenv
% which python
/usr/bin/python
正确的 anaconda 环境目录似乎位于$PATH
变量,但是/usr/bin
似乎优先于它。
当我通过操作系统打开标准终端时,行为正如我所期望的那样。
% conda activate myenv
% which python
/Users/cpl/anaconda3/envs/myenv/bin/python
请注意:我已经设置了 VSCode 首选项键python.pythonPath
to /Users/cpl/anaconda3/envs/myenv/bin/python
,我认为它工作正常。当我通过右键单击并选择运行文件时Run Python File In Terminal
,执行正确的python(来自conda环境)。我的问题是直接使用VSCode终端执行python。
我的 shell 是 zsh,我使用的是 OSX。有什么建议吗?
VSCode 文档中对此行为进行了解释:为什么终端的 $PATH 环境变量中有重复的路径和/或为什么它们是相反的?# https://code.visualstudio.com/docs/editor/integrated-terminal#_why-are-there-duplicate-paths-in-the-terminals-path-environment-variable-andor-why-are-they-reversed
听起来 VSCode 会在 MacOS 中运行你的 .zshrc 两次,与 conda 生成的冲突PATH
变量定义。
上面的链接列出了两种解决方案。对我有用的是设置 VSCode 设置"terminal.integrated.inheritEnv": false
。该文档警告说,如果执行此操作,所有环境变量都将被删除。但是,我发现我仍然在中定义了自定义变量.zshrc
file.
值得注意的是,最新版本的 VSCode 在检测到您正在使用 conda 环境时会提示您,并建议进行此更改。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)