VS Code 中的 Python 环境

VS Code 中的 Python 环境

起因是闲暇之余用到了 python,打开 pycharm 一看,好家伙居然不给我用,需要进行激活,我也知道网上存在大量的激活教程什么的,于是就去了,结果这些个博主非要关注、私信才给激活码/破解包,还放在龟速网盘中,真是气不打一处来。另一方面 pycharm 体积不能说很大吧,就是感觉体积偏大,弄一堆冗杂的插件,我作为一个闲暇 python 使用者,只要能满足我编写一些不太复杂的 python 代码就行了,高级功能用不上,不想涉及莫名 up 和龟速网盘,于是这篇文章就诞生了。

1. 下载并安装 Python(解释器)

1. 去哪下载(推荐官方)

直接用 Python 官方网站 下载安装包,版本选择:优先选 Python 3.12.x(3.12.2 就很好)。

2. 安装时怎么选(新手最容易选错的地方)

运行安装程序后,重点看两类安装方式:

方式 A:Install Now(省事,但路径通常在系统盘)

  • 优点:一路下一步即可
  • 缺点:安装路径一般在 C 盘

方式 B:Customize installation(推荐,可控)

如果希望安装到 D:\Python3.12.2,按下面做:

  1. 勾选(很重要):Add python.exe to PATH
    • 这能在终端直接用 pythonpip
    • 不勾也能用,但后面会更麻烦(需要写完整路径)。
  2. 点击:Customize installation
  3. 功能组件大部分保持默认即可(pip、venv 建议保留)。
  4. 下一步会有安装路径:把它改成自己想要的,比如:D:\Python3.12.2
  5. 安装完成后,建议点一下安装器里的 Disable path length limit(如果出现这个按钮)。

3. 安装完怎么验证(确保装成功)

打开 PowerShell / CMD,输入:

1
python --version

应看到类似:Python 3.12.2,再检查 python 路径:

1
where python

如果勾选了 PATH,通常会列出路径;若没有 PATH,也没关系,仍然可以用完整路径运行(例如 D:\Python3.12.2\python.exe ...)。

2. VS Code 必备准备:装插件 & 选解释器

1. 安装 Python 插件(微软官方)

在 VS Code 扩展里搜:Python(Microsoft) 并安装。

2. 选择解释器(最关键的第一步)

Ctrl + Shift + P → 输入并选择:Python: Select Interpreter,然后选自己的路径:D:\Python3.12.2\python.exe

  • 左下角显示正确解释器:D:\Python3.12.2\python.exe
  • 新建 .py 文件(名称任意),写入 python 代码:print("hello python")
  • 终端运行 D:/Python3.12.2/python.exe ... 能输出 hello python

结论:VS Code 能跑 Python,解释器配置没问题

警惕 “Code Runner” 插件

  • 问题:很多 C++ 开发者习惯用 VS Code 的 Code Runner 插件(右上角三角形运行按钮)。谨慎用它跑 Python 虚拟环境! Code Runner 默认通常直接调用系统 Path 里的 python,而 忽略 VS Code 右下角选中的 venv。
  • 纠正:明确建议使用 VS Code Python 官方插件提供的 “在终端中运行 Python 文件”(Run Python File in Terminal),或者直接在终端手敲 python xxx.py

3. 重点:每个项目一个 venv(避免 pip 装乱)

python 和 pip 的关系就像 node 和 npm 的关系或是 Ubuntu 和 apt 的关系,如果你不理解,把 pip 理解成手机的应用商店(包管理工具)就行,要安装库(“软件”)就需要用到 pip,当然除了 pip 也有 uv(rust 编写,快)、Poetry、PDM、Conda / Mamba 等,现在 pip 其实已经能够满足绝大多数场景了。

方式 A(推荐、省心):用 VS Code 一键创建

  1. 打开一个文件夹(比如 D:\Coding\Python\test
  2. Ctrl + Shift + P
  3. 运行:Python: Create Environment
  4. 选择:Venv
  5. 选择解释器:D:\Python3.12.2\python.exe
  6. VS Code 会在项目下创建一个 .venv 文件夹

创建完成后会看到:

  • VS Code 左下角解释器变成类似:Python 3.12.2 ('.venv')
  • 以后在这个项目里装的库,只会装进这个 .venv

方式 B:用命令行创建

在项目根目录打开终端(VS Code 终端就行):

1
D:\Python3.12.2\python.exe -m venv .venv

然后重启/刷新 VS Code,选择解释器为 .venv 对应的那个。

注意.venv 必须通过 Python: Create Environmentpython -m venv .venv 来创建,不可以自己手动创建一个空文件夹叫 .venv,VS Code 大概率识别不了,因为里面没有虚拟环境需要的结构(Scripts、pyvenv.cfg、site-packages 等)。

敲黑板:

1
2
># 固定命令,所有.venv虚拟环境通用,直接复制执行
>./.venv/Scripts/activate # 执行后,vscode终端会显式的显示出类似 (.venv) PS D:\Coding\Python> 这样的提示,可以快速判断当前环境

如果换路径了,怎么办?

方法一:用 VS Code 的 Python 解释器选择 + 自动激活(最省心)

  • 在 VS Code 里:Ctrl+Shift+P → “Python: Select Interpreter”
  • 选择自己的 .venv(通常在项目根目录下 .venv)
  • 然后确保 VS Code 设置开启自动激活:
  • Settings → 搜索 “Activate Environment
  • 打开 “Python: Terminal: Activate Environment
  • 这样,以后打开该项目的终端,它会自动激活该项目的 venv,不需要手敲 activate 路径。

方法二:让每个项目都用“项目内 .venv”(推荐固定约定)

把虚拟环境建在项目根目录:.venv

  • Windows PowerShell:py -m venv .venv
  • 之后激活就始终是相对路径(不怕在哪个盘):
  • PowerShell:.\.venv\Scripts\Activate.ps1
  • cmd:.venv\Scripts\activate.bat
  • Git Bash:source .venv/Scripts/activate
  • 关键点:只要 cd 到项目根目录(或从 VS Code 打开该文件夹),命令永远一样。

4. 为什么强烈推荐 venv:别把所有包都装到全局

可以把 Python 环境理解成一个“工具箱”,里面有解释器 + 一堆第三方库。

  1. 如果永远只装全局(不推荐长期这样):

    • 优点:省事,pip install xxx 就完了。
    • 缺点:项目一多就炸:
    -   A 项目要 `numpy==1.24`
    -   B 项目要 `numpy==1.26`
    -   全局每个包只能装一个版本,迟早冲突。
    
  2. 更好的做法:每个项目一个 venv

    • A 项目用 A 的包

    • B 项目用 B 的包

    • 互不影响,系统更干净

5. venv 到底是什么?

venv 本质是一个文件夹(常见叫 .venv),里面会有 一套“指向/复制”解释器的环境结构(Windows 通常会放一个 python.exe,但它本质上是给这个环境专用的入口),最关键的是:它有自己的 site-packages,装包只影响当前项目,不污染全局。所以可以简单记成一句话:venv = 给某个项目单独准备的一套 Python + pip 装包位置

6. 在 venv 的管理

创建并选中 .venv 后,打开 VS Code 终端,安装包:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# 1. 基础安装:装指定包的最新稳定版
pip install 包名
pip install 包名1 包名2 包名3 # 一次性安装多个包
pip install requests

# 2. 国内源加速安装:解决官方源下载慢/超时问题(阿里源,可替换清华/豆瓣源)
pip install 包名 -i https://mirrors.aliyun.com/pypi/simple/
pip install requests -i https://mirrors.aliyun.com/pypi/simple/

# 3. 安全兜底安装:-m 绑定当前Python解释器,多环境下100%装到当前环境(推荐新手/多版本Python用户)
python -m pip install 包名
python -m pip install numpy

# 4. 批量安装:按requirements.txt依赖清单,一键装项目所有包(拿到源码后必备)
pip install -r requirements.txt
# 批量安装+国内源加速(实用组合)
pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/

# 5. 指定版本安装:适配项目固定版本,避免版本冲突(==精确版,>=最低版,<=最高版)
pip install 包名==指定版本号 # 安装指定精确版本
pip install 包名>=版本号 # 安装不低于指定版本
pip install 包名<=版本号 # 安装不高于指定版本

# 6. 升级已安装的包:将包更新到最新版(--upgrade 可简写为 -U)
pip install --upgrade 包名
pip install -U requests
# 安全兜底升级
python -m pip install -U numpy

# 7. 升级pip自身:解决旧版pip装包报错/兼容问题(必做基础优化)
python -m pip install --upgrade pip

删除包:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# 1. 基础卸载单个包:执行后需输入y回车确认卸载
pip uninstall 包名
pip uninstall 包名1 包名2 包名3 # 一次性卸载多个包
python -m pip uninstall 包名 # 安全卸载,确保卸载当前环境的包
pip uninstall requests

# 2. 强制直接卸载(无需输y,适合快速操作)
pip uninstall -y 包名
pip uninstall -y numpy

# 3. 批量卸载:按requirements.txt清单,一键卸载所有包(清理项目环境必备)
pip uninstall -r requirements.txt
# 批量免交互卸载(实用组合)
pip uninstall -y -r requirements.txt

# 4. 安全兜底卸载:多环境下确保卸载当前环境的包
python -m pip uninstall -y 包名
python -m pip uninstall -y requests

查看与管理包信息:

1
2
3
4
5
6
7
8
9
10
# 查看已安装的包
pip list # 列出所有已安装包
pip list --outdated # 列出所有可更新的包

# 查看包详细信息
pip show 包名 # 显示包的详细信息(版本、位置等)
pip show 包名 --files # 显示包包含的所有文件

# 检查依赖关系
pip check # 检查已安装包的依赖关系

虚拟环境的删除与重装:

  • 删除:直接删除项目下的 .venv 文件夹(需先在终端输入 deactivate 退出激活);
  • 重装:删除后重新执行 python -m venv .venv,并重新选择解释器。

更新:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# 基础更新命令(两种写法效果相同)
pip install --upgrade 包名 # 将指定包更新到最新版本
pip install 包名 --upgrade # 同上,参数顺序不同
pip install --upgrade 包名1 包名2 包名3 # 一次性更新多个包
python -m pip install --upgrade 包名 # 确保更新当前环境的包

# 更新 pip 自身
python -m pip install --upgrade pip # 推荐:更新当前环境的 pip
pip install --upgrade pip # 更新 pip(可能更新到全局)

# 更新到指定版本(而非最新版)
pip install 包名==目标版本号 # 更新到特定版本
pip install django==4.2.0 # 将 Django 更新到 4.2.0(如果已安装旧版)

# 先查看哪些包可以更新
pip list --outdated # 列出所有有更新的包
# 示例流程
pip list --outdated # 1. 查看需要更新的包
pip install --upgrade requests # 2. 更新指定包
pip list # 3. 确认更新后的版本

实用小技巧:

1
2
3
4
5
6
7
8
# 清理包缓存
pip cache purge # 清理 pip 缓存(节省空间)

# 查看 pip 配置
pip config list # 查看当前 pip 配置

# 验证包是否安装成功
python -c "import 包名" # 测试能否导入,无错误表示成功

7. 怎么确认现在到底在用哪个 Python(多 python 环境)

如果发现“装了包但 import 还是报错”,可以试试:

1. 看当前解释器路径

1
python -c "import sys; print(sys.executable)"

2. 看 pip 属于谁

1
python -m pip -V

输出里会说明 pip 装到哪个目录(是不是 .venv\Lib\site-packages)。

3. Windows 下看系统到底调用了哪个 python(可选)

1
where python

8. 包管理建议:requirements.txt

当项目要发给别人/换电脑/部署时,忘记装过的包怎么办?

1. 导出依赖

1
2
3
4
5
6
7
pip freeze > requirements.txt					# 导出当前虚拟环境的所有依赖到 requirements.txt
python -m pip freeze > requirements.txt # 更安全的导出方式(确保导出当前环境的包)
pip freeze > requirements.txt --encoding=utf8 # 指定编码格式(避免中文路径/包名问题)

# 智能导出(仅导出项目实际使用的包),安装 pipreqs(先安装工具)
pip install pipreqs
pipreqs ./ --encoding=utf8 --force # 使用 pipreqs 扫描项目并生成 requirements.txt

2. 新环境一键安装

1
2
3
4
pip install -r requirements.txt					# 从 requirements.txt 安装所有依赖
python -m pip install -r requirements.txt # 安全安装方式(确保安装到当前环境)
# 使用国内源安装(解决下载慢问题)
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

9. VS Code 图形化看环境/包(直观但别依赖)

VS Code(配合 Python 扩展)可以在 Python Environments 里看到环境列表,有些情况下包列表展示不全/刷新慢是正常的,真正以命令行为准python -m pip list / python -m pip show 包名


建议总结:

  1. 每个项目创建 .venv(VS Code:Python: Create Environment 一键或 python -m venv .venv)。
  2. VS Code 左下角解释器必须选 .venv
  3. 装包用:python -m pip install ...
  4. 项目交付用:requirements.txt