Windows上VSCode通过WSL2在Linux环境编写Python程序(Conda虚拟环境切换)

该文章已生成可运行项目,

Windows上VSCode通过WSL2在Linux环境编写Python程序(Conda虚拟环境切换)

1 前言

在Windows上使用VSCode开发Python程序时,有时需要Linux环境(如某些库仅支持Linux)。WSL2(Windows Subsystem for Linux)提供了完整的Linux内核,结合VSCode的远程开发功能,可以无缝在Windows上编写和运行Linux环境下的Python代码。

本文将介绍:
WSL2 + Ubuntu 20.04 环境配置

VSCode 远程连接WSL2

Conda虚拟环境创建与管理

Python开发调试实战

2 环境准备

2.1 WSL2系统要求检查

Windows 10版本2004(内部版本19041)或更高,或Windows 11

需要使用GPU加速时,Windows 10版本21H2(内部版本19044)或更高,或Windows 11

验证方法:在powershell中输入winver查看结果

64位CPU支持虚拟化(Intel VT-x/AMD-V)

至少4GB内存(推荐8GB+)

WSL2安装参考:https://blog.youkuaiyun.com/Natsuago/article/details/145594631

2.2 启用WSL2

以管理员身份运行PowerShell,执行:

wsl --install -d Ubuntu-20.04

设置WSL2为默认版本:

wsl --set-default-version 2

启动Ubuntu 20.04,设置用户名和密码。

2.3 WSL2内安装CUDA(以CUDA 12.6版本为例)

  • 仅需在Windows安装NVIDIA驱动(版本需≥510.06):
nvidia-smi  # 验证驱动,应显示CUDA 12.6

注意:无需在WSL内重复安装驱动

  • WSL2内安装CUDA 包,推荐在线安装(Ubuntu发行版):
sudo apt-key del 7fa2af80
wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-wsl-ubuntu.pin
sudo mv cuda-wsl-ubuntu.pin /etc/apt/preferences.d/cuda-repository-pin-600
sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/3bf863cc.pub
sudo add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/ /"
sudo apt update
sudo apt install -y cuda-toolkit-12-6
  • PyTorch安装(适配CUDA 12.6):
    PyTorch官网:https://pytorch.org/get-started/locally/;选择合适的版本,会有相应的安装指令。
    选择合适的版本
pip3 install torch torchvision torchaudio
  • TensorFlow安装:
pip install tensorflow==2.15.0  # 需CUDA 11.8,版本需降级

注意事项:

  • 驱动冲突:确保Windows驱动与CUDA Toolkit版本匹配 WSL识别失败:执行wsl --shutdown重启WSL实例
  • 使用export CUDA_VISIBLE_DEVICES=0指定训练GPU
  • 避免在WSL内运行图形界面应用以减少性能损耗

2.4 安装VSCode及必要插件

下载并安装https://code.visualstudio.com/

安装以下扩展:

WSL(连接WSL2)

Python(Python开发支持)

Pylance(代码智能提示)

3 配置Conda虚拟环境

3.1 安装Miniconda

在WSL2的Ubuntu终端执行:

wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh

按照提示完成安装,并重新加载终端:

source ~/.bashrc

3.2 创建Conda虚拟环境

创建Python 3.9环境:

conda create -n myenv python=3.9

激活环境:

conda activate myenv

安装常用库(如numpy、pandas):

conda install numpy pandas matplotlib

4 VSCode连接WSL2并配置Python环境

4.1 连接WSL2

打开VSCode,点击左下角><图标,选择"连接到WSL"。
在这里插入图片描述
此时VSCode已连接到WSL2的Ubuntu环境

4.2 通过本地已有工程文件进行(本地部署+远程运行)

打开WSL部署的Ubuntu命令窗口。推荐使用Windows提供的工具Windows Terminal,方便快捷切换命令窗环境。(可以通过Micorsoft Store下载)
通过cd \mnt\your_path访问Windows上的本地文件,并用VS code打开。例如:

$ cd /mnt/e/Python/PythonTest/
/mnt/e/Python/PythonTest$ code .

通过这种方式会自动打开VScode,并建立WSL远程虚拟连接。你只需在选择一下解释器虚拟环境就可以了。

4.3 选择Conda虚拟环境

打开终端(Ctrl+Shift+~),确保已激活myenv:

conda activate myenv

在VSCode中按Ctrl+Shift+P,输入"Python: Select Interpreter",选择myenv的Python路径(如~/miniconda3/envs/myenv/bin/python
也可以,在界面右下角,切换解释器环境,如:
在这里插入图片描述

4.4 调试Python程序

创建test.py文件:

msg = 'Hello World'
print(msg)

import torch
print(torch.__version__)          # 应输出如2.3.0
print(torch.cuda.is_available())  # 需返回True
print(torch.version.cuda)         # 应显示12.6

F5调试,确保输出正确版本号。

5 常见问题

5.1 WSL2无法启动

检查BIOS是否开启虚拟化(VT-x/AMD-V)

确保Windows版本 ≥ 19041(winver查看)

5.2 Conda环境无法识别

在VSCode终端手动激活环境:

source ~/miniconda3/bin/activate myenv

或修改.bashrc自动激活:

echo "conda activate myenv" >> ~/.bashrc

5.3 扩展安装失败

确保VSCode的WSL扩展已安装

在WSL终端运行:

code --install-extension ms-python.python

总结

WSL2 + VSCode:提供了完整的Linux开发体验,无需双系统或虚拟机

Conda:管理Python环境,避免依赖冲突

VSCode远程开发:无缝调试Linux环境下的Python代码

适用场景:
机器学习(PyTorch/TensorFlow)

数据科学(Pandas/NumPy)

Linux专属工具开发

参考链接:
https://docs.microsoft.com/zh-cn/windows/wsl/

https://docs.conda.io/

https://code.visualstudio.com/docs/remote/wsl

📌 关注我的优快云博客,获取更多Python/机器学习教程! 🚀

本文章已经生成可运行项目
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值