↓内容,由Ai自生成,仅作阅读分享!
------
深入学会搭建Python运行环境:Conda、Docker、Termux与WSL四剑客完全指南
从零开始,一文讲透四种主流Python环境搭建方案,让环境配置不再成为你编程路上的绊脚石。
前言:为什么你需要的是一篇“保姆级”教程?
很多Python新手都会遇到这样的场景:在自己电脑上写得顺风顺水的代码,发给朋友却跑不起来;或者同时维护两个项目,一个需要Python 3.8,另一个需要Python 3.11,来回卸载重装搞得焦头烂额。更糟的是,当你兴冲冲地下载了一个热门开源项目,照着README一步步安装依赖,结果报错一个接一个,NumPy版本不兼容、PyTorch和FunASR闹别扭、Conda源连不上……折腾一整天,代码一行没写,信心却碎了一地。
这些问题的根源,就在于Python运行环境没有管理好。
本文将以“保姆级”的详细程度,带你深入学会四种主流的Python环境搭建方案:
1. Conda——轻量级Python环境管家
2. Docker——重型容器化方案
3. Termux——安卓手机上的Linux环境
4. WSL——Windows自带的Linux子系统(新成员)
无论你是在Windows电脑、Linux服务器、macOS,还是在安卓手机上写代码,都能找到最适合自己的方案。更重要的是,读完这篇文章,你将理解这些工具背后的设计思想,以后再遇到新工具也能快速上手。
---
第一部分:Conda——最通用的Python环境管理器
1.1 什么是Conda?
Conda是一个开源的包管理系统和环境管理系统,专门为Python等语言设计。它的核心作用是帮你创建多个相互隔离的Python环境,每个环境可以拥有不同版本的Python和不同的第三方库,彼此之间互不干扰。
打个比方:Conda就像是一个智能调料架,上面摆着多套完整的“厨具”(Python解释器+各种库)。做中餐用一套,做法餐用另一套,切换只需一个命令——conda activate 环境名。
1.2 Conda的两种发行版
Conda主要有两个版本:
· Anaconda:完整版,预装了150+个数据科学常用包(NumPy、Pandas、Jupyter等),安装包约3-5GB。适合新手或数据科学从业者,开箱即用。
· Miniconda:精简版,只包含conda核心组件和Python基础运行时,安装包约80MB。适合追求轻量、按需安装的开发者。
推荐新手使用Miniconda——需要什么包自己装,更清爽,也更能理解环境管理的本质。
1.3 Windows下安装Miniconda(保姆级步骤)
第一步:下载安装包
访问Miniconda官方下载页面,选择 Miniconda3-latest-Windows-x86_64.exe 下载。
直接下载链接:https://repo.anaconda.com/miniconda/Miniconda3-latest-Windows-x86_64.exe
第二步:运行安装程序
双击下载的 .exe 文件,按向导操作:
· 点击“I Agree”同意许可协议
· 安装模式选择“Just Me”(推荐,仅对当前用户生效)
· 目标路径建议保持默认或改为不含中文和空格的路径,如 D:\DevTools\Miniconda3
第三步:关键配置
在Advanced Options界面:
· ✅ 勾选“Add Miniconda3 to my PATH environment variable”——这样在任何命令行窗口都能直接使用 conda 命令
· ❌ 取消勾选“Register Miniconda3 as default Python”——避免与系统已有的Python冲突
第四步:验证安装
按 Win 键,搜索并打开 “Anaconda Prompt (miniconda3)” (注意:不是普通的CMD)。输入:
```bash
conda --version
```
如果显示类似 conda 26.1.1 的版本号,说明安装成功。
为什么必须用Anaconda Prompt? 因为普通CMD找不到conda命令,而Anaconda Prompt已经帮你配置好了所有环境变量。
1.4 Conda核心操作(必学命令)
创建新环境(指定Python版本):
```bash
conda create -n 环境名 python=3.10 -y
```
例如:conda create -n myproject python=3.10 -y
激活环境:
```bash
conda activate 环境名
```
激活后,命令行前面会出现 (环境名) 提示符。
退出当前环境:
```bash
conda deactivate
```
安装包(在激活环境后执行):
```bash
conda install 包名
# 或使用pip(推荐,包更全)
pip install 包名
```
查看所有环境:
```bash
conda env list
```
导出环境配置(分享给他人):
```bash
conda env export > environment.yml
```
从配置文件重建环境:
```bash
conda env create -f environment.yml
```
删除环境:
```bash
conda env remove -n 环境名
```
1.5 为什么Python版本要选3.10而不是最新的3.14?
这是一个很常见的问题。你在系统里可能已经装了Python 3.14,但Conda环境里却指定Python 3.10,原因很简单:
· PyTorch等核心库的预编译包(wheels)通常只覆盖到Python 3.12,3.14太新了,pip找不到适配文件,就会尝试从源码编译——这在Windows上极易失败。
· Python 3.10是当前AI社区的“稳定公约数”,绝大多数开源项目(如SenseVoice、Whisper)都在这个版本上测试充分。
不用担心“浪费”了系统里的3.14——Conda环境是独立的,互不影响。
1.6 Conda的优缺点与适用场景
优点:
· ✅ 轻量级,环境切换毫秒级
· ✅ 完美支持多版本Python共存
· ✅ 跨平台(Windows/Linux/macOS)
· ✅ 无需root/管理员权限
缺点:
· ❌ 不能打包成镜像分发(只能导出“配方”yml文件)
· ❌ 跨平台一致性有限(Windows环境不能直接搬到Linux)
· ❌ 在某些网络环境下,conda源可能连不上(可通过国内镜像解决)
适用场景:日常Python开发、数据科学项目、需要同时维护多个项目的开发者。
第二部分:Docker——应用容器化的终极方案
2.1 什么是Docker?
Docker是一个容器化平台,它能把你的应用连同整个运行环境(操作系统、依赖库、配置文件等)一起打包成一个镜像,在任何安装了Docker的机器上都能一键运行。
如果说Conda是管理“Python工具包”的,那Docker就是打包“整个软件环境”的。Docker解决了那个经典的难题——“在我机器上能跑,在你机器上就不行”。
2.2 Docker的核心概念
概念 说明 通俗类比
镜像(Image) 应用及其依赖的只读模板 软件安装包 / 蛋糕模具
容器(Container) 镜像的运行实例 正在运行的程序 / 烤好的蛋糕
Dockerfile 构建镜像的指令文件 菜谱 / 制作说明书
仓库(Registry) 存储镜像的地方(如Docker Hub) 应用商店
2.3 Windows下安装Docker
前提条件:Windows系统需启用WSL 2(Windows Subsystem for Linux)后端。
安装步骤:
1. 访问 Docker Desktop官网 下载Windows版安装包
2. 双击安装,按向导完成
3. 启动Docker Desktop,等待状态变为“Running”
4. 打开命令提示符,验证安装:
```bash
docker --version
docker run hello-world
```
如果看到“Hello from Docker!”,说明安装成功。
2.4 第一个Python项目的容器化(实战)
第一步:创建项目文件
新建一个文件夹,创建 app.py:
```python
print("Hello from Docker!")
```
创建 requirements.txt(空文件即可)。
第二步:编写Dockerfile
在项目根目录创建 Dockerfile(无扩展名):
```dockerfile
# 使用官方Python镜像作为基础
FROM python:3.9-slim
# 设置工作目录
WORKDIR /app
# 复制依赖文件并安装
COPY requirements.txt .
RUN pip install -r requirements.txt
# 复制应用代码
COPY app.py .
# 运行程序
CMD ["python", "app.py"]
```
第三步:构建镜像
```bash
docker build -t my-python-app .
```
第四步:运行容器
```bash
docker run my-python-app
```
2.5 Docker与Conda的本质区别
很多人会混淆Docker和Conda,其实它们的隔离层级完全不同:
· Conda只在软件层隔离——只管理Python解释器和库,共享宿主机的操作系统。
· Docker在操作系统层隔离——拥有独立的文件系统、网络栈、进程空间,几乎像一个轻量级虚拟机。
所以Docker的镜像可以在任何系统上运行,而Conda的环境无法跨平台迁移。
2.6 Docker的优缺点与适用场景
优点:
· ✅ 可打包成镜像,任意分发、复制、迁移
· ✅ 跨平台一致性极佳(Linux镜像可在Windows/Mac上运行)
· ✅ 生产级部署标准
缺点:
· ❌ 资源开销较大(镜像通常数百MB到数GB)
· ❌ 学习曲线较陡
· ❌ Windows下需WSL 2支持
适用场景:微服务部署、生产环境标准化、需要保证环境绝对一致的项目。
第三部分:Termux——安卓手机上的Python开发环境
3.1 什么是Termux?
Termux是一个安卓平台上的终端模拟器,它能在不Root的情况下,在手机上提供一个完整的Linux用户空间。你可以在里面安装Python、Git、Vim等工具,把手机变成一台“口袋里的开发机”。
Termux通过Proot技术模拟Linux文件系统和权限,所有工具都隔离在专属路径下,不会影响手机系统。它的出现,让“随时随地写代码”从口号变成了现实。
3.2 安装Termux
推荐渠道:从 F-Droid 或Termux的GitHub发布页下载安装。
注意:Google Play上的版本可能更新较慢,推荐使用F-Droid。
3.3 Termux基础配置
第一步:更新软件源
```bash
pkg update && pkg upgrade
```
第二步:授予存储权限
```bash
termux-setup-storage
```
手机会弹出权限请求,点击“允许”。
第三步:安装Python
```bash
pkg install python
```
第四步:验证安装
```bash
python --version
pip --version
```
3.4 在Termux中管理Python环境
Termux本身不提供Conda那样的多环境管理功能,但可以使用Python自带的 venv 来创建虚拟环境:
创建虚拟环境:
```bash
python -m venv myenv
```
激活虚拟环境:
```bash
source myenv/bin/activate
```
退出虚拟环境:
```bash
deactivate
```
3.5 Termux vs Conda:一个有趣的类比
如果你已经理解了Conda,可以用一个类比来理解Termux:
Conda(Windows)≈ 可以同时管理N个Python环境的“环境管家”
Termux(安卓)≈ 一个完整的Linux环境,本身就是一个“工作间”
两者都能提供环境隔离,但隔离的层级不同:Conda隔离的是Python库,Termux隔离的是整个用户空间。
3.6 Termux的优缺点与适用场景
优点:
· ✅ 无需Root,零门槛
· ✅ 手机随身携带,随时可用
· ✅ 完整的Linux命令行体验
· ✅ 资源消耗低
缺点:
· ❌ 不能打包成镜像分发
· ❌ 某些C扩展库在ARM架构上缺少预编译包
· ❌ 长时间运行受手机电源管理限制
· ❌ 算力有限,不适合重型计算
适用场景:移动端轻量开发、学习Python、应急调试、远程运维。
第四部分:WSL——Windows自带的Linux子系统(新成员)
4.1 什么是WSL?
WSL(Windows Subsystem for Linux)是微软官方推出的一项Windows功能,它可以让你在Windows系统中,直接、流畅地运行一个完整的Linux环境。
它的核心价值是让你同时享用Windows的易用性和Linux强大的开发工具链。和你之前折腾的虚拟机或双系统不同,WSL无需繁琐配置,能和你的Windows系统无缝集成。
4.2 WSL的两种版本
· WSL 1:早期版本,通过翻译层将Linux系统调用转换为Windows系统调用,兼容性有限。
· WSL 2:推荐使用。基于轻量级虚拟机,使用完整的Linux内核,兼容性极佳,能运行Docker等绝大多数软件,启动速度也很快。
4.3 安装WSL(极简三步走)
第一步:一键安装
右键点击“开始”菜单,选择“Windows PowerShell (管理员)”或“终端 (管理员)”,输入以下命令并回车:
```bash
wsl --install
```
这个命令会自动:
· 启用WSL功能
· 安装WSL 2内核
· 设置WSL 2为默认版本
· 下载并安装Ubuntu发行版(最流行的Linux发行版)
整个过程全自动,你只需要耐心等待。
第二步:重启电脑
安装完成后,根据提示重启电脑。这是必须的步骤,因为WSL需要在系统底层启用虚拟化功能。
第三步:设置用户名和密码
重启后,WSL会自动启动Ubuntu,并提示你设置专属的用户名和密码:
```
Enter new UNIX username: 你的用户名
New password: 你的密码
Retype new password: 再次输入密码
```
注意:输入密码时屏幕不会显示任何字符,这是正常的,直接输入即可。
4.4 在WSL中配置Python开发环境
第一步:更新软件源
```bash
sudo apt update && sudo apt upgrade -y
```
第二步:安装Python和pip
```bash
sudo apt install python3 python3-pip -y
```
第三步:验证安装
```bash
python3 --version
pip3 --version
```
第四步:安装项目依赖
```bash
pip3 install funasr torch torchaudio librosa gradio
```
第五步:进入项目目录并运行
WSL可以直接访问Windows磁盘:/mnt/c/ 对应C盘,/mnt/d/ 对应D盘。你现有的 C:\Users\HP\SenseVoice 项目,在WSL里的路径是:
```bash
cd /mnt/c/Users/HP/SenseVoice
python3 webui.py
```
4.5 为什么WSL能解决Windows上的环境“坑”?
你在Windows上遇到的NumPy版本不兼容、_state_dict_pre_hooks报错等问题,在WSL的Linux环境下通常都能“一笑而过”。原因很简单:
· 大多数Python科学计算库(如PyTorch、NumPy)的开发者首选Linux,所以预编译包在Linux上最完善。
· Linux的文件系统和权限模型比Windows更简单,不容易出现路径、权限相关的诡异报错。
· 社区支持更丰富,你在网上搜到的解决方案90%都是针对Linux的。
4.6 WSL的优缺点与适用场景
优点:
· ✅ 微软官方支持,与Windows无缝集成
· ✅ 轻量快速,启动秒级
· ✅ 完整的Linux内核,兼容性极佳
· ✅ 可直接访问Windows文件系统
· ✅ 能运行Docker、GPU计算等高级功能
· ✅ 完美避开Windows环境配置的“坑”
缺点:
· ❌ 需要Windows 10及以上版本
· ❌ 首次安装需要重启电脑
· ❌ 对老电脑(不支持虚拟化)不友好
适用场景:Windows用户的Python开发首选,尤其是科学计算、AI项目、Web开发等。
第五部分:四剑客终极对比与选择指南
5.1 核心对比表
对比维度 Conda Docker Termux WSL
本质 Python环境管理器 容器化平台 安卓上的Linux终端 Windows上的Linux子系统
隔离层级 软件层(Python库) 操作系统层 用户空间层 操作系统层(完整内核)
能否打包镜像 ❌ 不能 ✅ 能 ❌ 不能 ❌ 不能
跨平台一致性 ⚠️ 有限 ✅ 优秀 ❌ 仅限安卓 ⚠️ 仅限Windows
资源开销 小(几百MB) 大(几百MB~数GB) 小(几十MB) 中(约1-2GB)
启动速度 毫秒级 秒级 秒级 秒级
学习曲线 平缓 陡峭 中等 平缓
典型场景 日常开发、数据科学 生产部署、微服务 移动开发、应急编程 Windows开发者首选
5.2 如何选择?
· 你在Windows电脑上做Python开发,想省心省力 → 首选WSL。这是微软官方为开发者量身打造的方案,完美避开Windows环境配置的各种“坑”。
· 你只需要管理多个Python项目,不想折腾系统 → 选 Conda。轻量、简单、够用。
· 你需要把应用部署到服务器,保证环境绝对一致 → 选 Docker。虽然重,但最可靠。
· 你想在手机上随时随地写代码 → 选 Termux。把手机变成口袋开发机。
5.3 进阶组合拳
这四个工具不是互斥的,可以组合使用:
· 用 WSL 作为日常开发主环境(Windows用户)
· 用 Conda 在WSL内部管理不同项目的Python依赖
· 用 Docker 把成熟的应用打包部署
· 用 Termux 在手机上远程连接服务器或应急修改
结语:环境配置是每个开发者的必修课
搭建Python运行环境是每个开发者的必修课,也是很多人入门时遇到的第一道坎。今天介绍的四种方案各有所长:
· Conda让你在电脑上轻松管理多个项目环境,切换自如。
· Docker让你把应用打包带走、随处运行,是生产级部署的标配。
· Termux让你把手机变成开发利器,随时随地写代码。
· WSL让你在Windows上享受Linux的开发体验,完美避开环境配置的“坑”。
理解了它们的本质区别,你就能在合适的场景选择合适的工具。但最重要的是——现在就开始动手! 选一个方案,打开命令行,把第一个环境搭起来。纸上得来终觉浅,绝知此事要躬行。
如果你在配置过程中遇到任何问题,欢迎随时回来交流。环境配置的每个“坑”都是你成长的阶梯,踩过去,你就离一个真正的开发者更近了一步。🚀
------
延伸阅读:
如何搭建python运行环境