部署win10+vscode+anaconda3环境

1、安装 anaconda3

务必选择添加环境变量(或用户变量),便于 vscode 新建环境,或者手动添加,假设安装目录为 D:\anaconda3,添加如下路径:

1
2
3
4
5
D:\anaconda3
D:\anaconda3\Library\mingw-w64\bin
D:\anaconda3\Library\usr\bin
D:\anaconda3\Library\bin
D:\anaconda3\Scripts

2、vscode 安装微软官方 python 插件,相关信息如下

1
2
3
4
5
6
Name: Python
Id: ms-python.python
Description: IntelliSense (Pylance), Linting, Debugging (multi-threaded, remote), Jupyter Notebooks, code formatting, refactoring, unit tests, and more.
Version: 2023.10.1
Publisher: Microsoft
VS Marketplace Link: https://marketplace.visualstudio.com/items?itemName=ms-python.python

3、创建或复用 conda 环境

1)创建匿名 conda 环境

ctrl+shift+P,输入> Create Environment 命令,选择建立 conda 环境,进一步选择 python 版本。

注意:这种方式会在项目下新建 .conda 目录。

重新启动终端,将以全路径方式激活:

1
2
3
(base) PS E:\test> activate
(base) PS E:\test> conda activate e:\test\.conda
(e:\test\.conda) PS E:\test>

2)创建指定名称的 conda 环境

终端执行 conda create -n <env_name> python=<version> 即可创建指定 python 版本且名为 env_name 的环境,该环境一般放在目录 anaconda3\envs

重新启动终端,将以名称激活:

1
2
3
(base) PS E:\test> C:/anaconda3/Scripts/activate
(base) PS E:\test> conda activate env_name
(env_name) PS E:\test>

3)复用

ctrl+shift+P,输入> Select Interpreter 命令,选择已存在的 conda 环境(包括当前目录的匿名环境),重启终端即可。

注意:重新选择环境后要重新进入终端

4、问题及解决方案

问题 1: 出现如下提示,应执行 conda init powershell,之后重新启动 vscode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
CommandNotFoundError: Your shell has not been properly configured to use 'conda activate'.
If using 'conda activate' from a batch script, change your
invocation to 'CALL conda.bat activate'.

To initialize your shell, run

$ conda init <SHELL_NAME>

Currently supported shells are:
- bash
- cmd.exe
- fish
- tcsh
- xonsh
- zsh
- powershell

See 'conda init --help' for more information and options.

IMPORTANT: You may need to close and restart your shell after running 'conda init'.

问题 2: 使用终端进入 conda 环境的项目目录时,可能会提示报错信息:“……在此系统上禁止运行脚本”,

vscode 终端选择 Windows PowerShell 时,默认执行策略是 Restricted,即不允许任何脚本运行。

有关 Windows PowerShell 执行策略的详细信息,请参阅 about_Execution_Policy。

可执行 get-executionpolicy 命令查看当前策略

以管理员身份打开 PowerShell 输入 set-executionpolicy remotesigned,重启 vscode 终端,即可切换到当前 conda 环境。一般而言,解除上述问题后,每次新建终端进入 conda 环境后,会自动执行 activeconda active 命令进入默认的 base 环境,例如:

1
2
3
(base) PS E:\test> activate
(base) PS E:\test> conda activate base
(base) PS E:\test>

5、其他相关命令

  • 查看安装源:conda config --show-sources
  • 添加安装源:conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
    • 其他安装源:conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
    • 其他安装源:conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
    • 换回 conda 的默认源,删除 channels:conda config --remove-key channels
  • 删除安装源:conda config --remove channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
  • 查看源优先级:conda config --get channels
  • 查看 .condarc 文件位置(执行 conda config 系列命令时生成):conda info
  • 显示 channel 来源: conda config --set show_channel_urls yes
  • 查看所有虚拟环境:conda info --envsconda env list
  • 安装指定版本依赖:conda install package=version
  • 临时指定源:conda install package=version -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/