我想学习数据科学,因此使用了一些非常受欢迎的Python模块,如熊猫,马特洛利布,Numpy等。因此,我清理了已安装的Anaconda,现在将其用作我的默认Python解释器,并且还使用Conda来安装软件包和创建虚拟环境。我使用VS代码作为我的日常文本编辑器。但是,在VS代码中使用集成的Git终端和Anaconda Python解释器时,我遇到了一些问题。
我面临着几个问题。我看到的第一个问题是当我使用CMD运行Python时。如果我在cmd中键入并输入python
,就会出现anaconda提供的python解释器。但我也得到了一个警告:
警告:此Python解释器位于conda环境中,但该环境尚未激活。库可能无法加载。要激活这个环境,请看https://conda.io/activation
我没想到会得到这个输出。无论如何,VS代码中还有另一个问题。但首先我想提一下,我在安装Anaconda时已经选中了“添加到PATH”,所以没有问题。现在,当我在VS Code中打开一个新的终端时,自动运行C:/用户/用户/Anaconda3/脚本/激活
,然后运行conda激活库
。但是,当conda激活基地
运行时,如前所述,我会自动获得一个命令不查找错误。它指出您的外壳程序尚未正确配置为使用“conda 激活”。如果使用批处理脚本中的“conda 激活”,请将调用更改为“CALL conda.bat激活”
然后我被告知要初始化我的外壳,所以我做了conda init bash
,但仍然没有运气。这让我想到了.bash_profile
。我认为它必须与这个bash配置文件有关。无论如何,这就是我的bash个人资料中的内容
# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
eval "$('/C/Users/User/Anaconda3/Scripts/conda.exe' 'shell.bash' 'hook')"
# <<< conda initialize <<<
只是问题的总结:
>
运行Anaconda Python解释器时CMD中出现意外警告
在VS代码中打开新终端时,自动运行Anaconda脚本和conda activate base
Conda init bash无济于事
页(page的缩写)我已经尝试在CMD和Git Bash中使用< code > conda activate[env _ name],它们工作起来没有任何问题。换句话说,Anaconda和conda在VS代码终端之外可以完美地工作。
一年后,我仍然遇到这个问题。以下是基于阿拉法特回答的精简和更新的方法。
> < li>
安装Git Bash
将Git Bash配置为在VSC使用(参见如何从Visual Studio代码集成终端在Windows上使用Bash?)
从VSC打开git bash终端
如果conda激活成功运行,跳过其余部分
快跑
conda初始化bash
检查现有的 bash 点文件:
ls-al~/.bash*
可能只有“.bashrc”和“.bash_profile”中的一个存在
检查现有的点文件以获取conda初始化代码,例如。
猫~/.bash_profile
这包括在我的案例中。
要解决此问题,我们必须创建缺少的点文件,并使其执行以前存在的OTHER文件:
三通-a~/.bashrc
if[-f~/.bash_profile];那么
源~/.bash_profile
菲菲
结束
在VSC中重新打开终端
EDIT:比使用< code>source activate让< code>conda activate命令在VS代码中的git bash终端中工作更好的解决方案:
conda
初始化bash -l
,以将配置的外壳作为登录外壳启动conda激活
命令!更多信息:bash-l
运行您的~/. profile
/~/。bash_profile
/~/. zprofile
脚本,其中实际上引用了conda可执行文件(但在其中,Git Bash作为集成终端默认不运行并引用)。因此,git bash不知道在运行conda激活
命令时在哪里搜索conda,根据阿拉法特上面的解释,运行conda init
会更改此中的git bash PATHs。bash_profile
文件,但无效,因为VS Code中的git bash终端实际上并不引用此文件!VS Code官方文档中的更多信息。
作为对已接受答案的补充解释,我在这里发布了一个对我有效的解决方案,可能对其他人也有帮助(改变用户设置并没有解决我的问题)。如果下面或上面接受的答案不起作用,链接也可以指向其他可行的解决方案。
注意:在尝试下面的< code>source activate方法之前,请阅读Arafat的回答,以了解为什么通常不推荐使用它。也就是说,不要管它,因为它仍然可以解决问题。
以下是我在windows上使用VS Code中的Git Bash终端的简单步骤:
>
源激活 env 名称
- 您现在应该看到您的行附加了(基本)标记。
在调用源代码激活
后,我发现以下conda激活
命令可以工作:即conda激活env2-name
对于Git Bash(作为VS代码终端)不起作用的东西对我来说:激活嫉妒名
和康达激活嫉妒名
。
我自己已经找到了答案,并想在这里分享。首先,在撰写问题时,我正在使用Git Bash作为VS代码中的终端(仍在使用它)。所以问题是,当我在Git Bash或VS代码终端中运行命令conda init bash
时,Conda基本上只是将用于激活Conda环境的命令放在.bash_profile因为它是在登录到Bash期间获得的。但是 VS 代码中的集成终端是 Git Bash 会话的子壳。这就是为什么.bash_profile
不是在VS Code中提供的,因为.bash_profile
仅在主Bash会话期间提供。.bashrc
文件是在 VS 代码中创建终端会话时提供源的文件。因此,您实际需要做的是将 conda init bash
放入.bash_profile
的代码粘贴到 .bashrc
文件中,并自动使.bash_profile
源代码 . bashrc
文件。
因此,综上所述,使用conda init bash将conda命令放在中。bash_profile
,通常由GitBash提供源代码,但VS code Git bash终端将使用.bashrc
。
因此,您只需将代码从.bash_profile
剪切并粘贴到.bashrc
(如前所述),或者如果您愿意,只需按照以下方式操作:将此代码放在.bash_profile
中:
if [ -f ~/.bashrc ]; then
source ~/.bashrc
fi
在您的. bashrc
中,输入以下代码:
# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
eval "$('{path_to_your_conda.exe}' 'shell.bash' 'hook')"
# <<< conda initialize <<<
# You can get conda.exe path by using `which conda` in Git Bash
现在,当您在VS代码终端中打开Git Bash会话时,您可以使用< Code > conda activate env _ name 来激活您拥有的任何环境。
现在一切都应该在VS Code终端中按预期工作,但我想进一步详细说明一些事情。如果您愿意,您可以跳过conda init bash
过程(不推荐,请继续阅读以获取更多知识,但请仅按照上述步骤操作)。这是conda4.4.0
中引入的一项功能。在此之前,激活conda环境的方式是使用源激活
,但该命令不是跨平台的,这意味着该命令不能在Windows等操作系统中使用。所以他们通过引入命令来做这个改变,比如:conda激活env_name
,这样conda环境变得更容易使用,尽管有操作系统平台。
conda-activate
还有其他优点。这直接来自他们的发布文档:
conda 激活:重新设计了底层环境激活的逻辑和机制。在 conda 4.4 中,conda 激活和 conda 停用现在是激活和停用环境的首选命令。您会发现它们比以前的conda版本中的源激活和源停用命令更活泼。conda激活命令还具有以下优点:(1)在所有操作系统,shell和平台上都是通用的,以及(2)不会与其他软件包(如Python virtualenv的激活脚本)中的脚本发生路径冲突。
我用这个问题作为参考。查看以了解更多信息。
话虽如此,如果您使用的是Git Bash,则使用源代码激活env_name
仍然可以工作,即使在VS代码Git Bash终端中也是如此。源激活env_name
不需要事先设置或配置。但强烈建议您仅使用 conda init
来设置所有内容,然后使用 conda 激活env_name
。
[注意]:在Windows上查找和修改所述.bashrc
和.bash_profile
通常不像在Linux上那么简单。但可以很容易地完成,像这样:
不言而喻,但是,您应该安装Git Bash。据我所知,安装 Git Bash 应该会自动创建 .bashrc
或 .bash_profile
,或者两者兼而有之。这些文件被称为“dotfiles”(因为它们以点开头),默认情况下,这些文件在大多数操作系统上都是隐藏的,在Windows上肯定是隐藏的。如果它们是由 Git Bash 在您的系统上自动创建的,则它们很可能被放置在您的主目录中。视窗上的主目录是 C:\用户\
打开 Git Bash 并转到您的主目录:cd
。只需键入此内容,您将在您的主目录中
- 输入以下命令:
ls -a
,您将看到所有文件,甚至是隐藏的文件。查找.bash_profile
和 .bashrc
。两者都应该存在。如果是,您可以按照上述说明进行操作。但是,如果一个不存在,或者如果两者都丢失,请使用:触摸.bashrc创建它们
在问题中,我还谈到了VS代码自动激活Conda环境。VS代码这样做没有问题,因为这是默认行为。我误解了这是一个问题。但是如果有人想阻止VS代码自动这样做,我建议尝试在用户设置中设置:
< code > " python . terminal . activate environment ":false
目前,我在VS代码集成终端上运行Python代码时遇到问题,尽管代码在任何其他编辑器或Powershell(Windows用户)上都能完美运行。 我目前正在使用Python的Anaconda版本(PATH上的Anaconda),但在昨晚对VS代码进行了一些更新后,错误阻止了我在集成终端上运行代码。我尝试重新安装Anaconda和VS代码,但问题仍然存在。 第1行字符:41 ... onda3/py
有什么建议如何在VS Code中的代码和集成终端之间切换? 例如,在 PowerShell ISE 中,它是:Ctr D 终端和 Ctr I 代码 找不到任何类似的VS Code。 提前感谢您的任何建议
有一个快捷方式来显示集成终端。但如果终端已经打开,这将隐藏它。如果有一个快捷方式,在编辑器上键入时专注于终端,那就太好了。
在Visual Studio代码中选择WSL作为默认终端后,我无法打开终端窗口。终端窗口打开,随机文本出现在屏幕上,然后终端关闭并显示一条错误消息:“终端进程终止,退出代码:4294967295”。 有人知道这是为什么吗?我看了一些vscode github问题帖子,但我似乎无法让任何东西发挥作用。 查看我的设置屏幕截图。json文件和下面发生的事情的gif:
我最近卸载并重新安装了VS代码,因为我想重新开始。然而,现在VS代码表示python3在库/框架下。。。python在usr/bin/python下。在终端中,这些都是针对哪个python和哪个python3的
有人知道如何设置使用cmd的按钮吗?