环境搭建:Python版本选择、虚拟环境创建、安装必备库

说实话,我见过太多同学一上来就装最新的Python 3.12,结果跑一个老项目的代码直接报错。环境搭建这事儿,看着不起眼,但绝对是整个课程里最容易踩坑的地方。我个人习惯是先把地基打稳,后面写代码才会顺。

Python版本怎么选

我们这个课程用到的库——pandas、matplotlib、numpy、scikit-learn——目前对Python 3.9~3.11支持最稳。3.12刚出那阵子,我在项目里试过,结果scikit-learn有个内部方法被标记废弃了,跑起来会弹warning,虽然能用但看着不舒服。

我的建议:直接用Python 3.10或3.11。为什么?这两个版本在Windows、macOS、Linux下都有官方预编译的wheel包,装numpy和scikit-learn基本秒完成,不用自己编译。你想想看,要是选了3.12,有些库可能还在适配期,临时出个问题够你排查半天。

版本推荐对照表

Python版本推荐度原因
3.9可用主流库都支持,但2024年后逐步停止安全更新
3.10强烈推荐稳定、wheel齐全、本课程所有库完美运行
3.11强烈推荐速度比3.10快10-20%,库兼容性很好
3.12慎用部分科学计算库尚在适配,可能遇到难定位错误

创建虚拟环境——这步真的不能省

我记得刚入行那会儿,所有项目都共用一套Python,装一个库拖一堆依赖,最后搞得连系统自带的脚本都跑不动。后来我养成了每个项目一个虚拟环境的习惯,再也没有被依赖冲突搞崩过。

Python官方从3.3开始就内置了venv模块,我们用这个就好,不需要额外装virtualenv。

创建虚拟环境的命令(以Windows示例,macOS/Linux类似)

# 打开终端,进入你的项目目录
cd D:\courses\validity_stacked_bar

# 创建虚拟环境(会在当前目录生成一个 venv 文件夹)
python -m venv venv

# 激活环境(Windows)
venv\Scripts\activate

# 激活环境(macOS / Linux)
source venv/bin/activate

激活后,终端前面会出现 (venv) 字样,这就说明你已经在虚拟环境里了。嗯,这里要注意:千万别在系统Python里直接 pip install,不然下一个项目就等着哭吧。

小技巧:如果你用VS Code,可以按 Ctrl+Shift+P 输入「Python: Select Interpreter」,选你刚创建的 venv\Scripts\python.exe,终端会自动激活。省去每次手打激活命令的麻烦。

安装必备库

虚拟环境激活后,我们开始装库。四个库的安装顺序虽然不强制,但我习惯按 pandas → numpy → matplotlib → scikit-learn 来装。为什么?因为pandas底层依赖numpy,先装numpy可以避免pandas安装时临时编译。

# 先升级pip,老版本pip有时候会下载慢或找不到包
pip install --upgrade pip

# 安装numpy(科学计算基础)
pip install numpy

# 安装pandas(数据处理)
pip install pandas

# 安装matplotlib(数据可视化)
pip install matplotlib

# 安装scikit-learn(机器学习)
pip install scikit-learn

等几分钟,如果看到类似 Successfully installed pandas-2.1.4 numpy-1.26.2 ... 就说明装好了。我曾有一次网络不好,下载一半断了,结果pip报了个奇怪的哈希校验错误。解决办法也很简单:换个镜像源重装。

国内用户推荐使用清华镜像:

pip install pandas -i https://pypi.tuna.tsinghua.edu.cn/simple

避坑指南:我曾经在macOS上用系统自带的Python 3.8装scikit-learn,结果编译时报缺失 libomp.dylib 错误。原因是苹果芯片的OpenMP支持需要单独装。解决办法是用conda代替pip,或者手动安装llvm-openmp。如果你也遇到类似问题,建议直接换成Python 3.11 + pip,我试过再没出过这个错。

验证安装结果

装完别急着走,跑个快速检查,确保所有库都能正常导入,版本也符合要求。

python -c "import numpy; print('numpy', numpy.__version__)"
python -c "import pandas; print('pandas', pandas.__version__)"
python -c "import matplotlib; print('matplotlib', matplotlib.__version__)"
python -c "import sklearn; print('sklearn', sklearn.__version__)"

如果看到类似下面的输出,恭喜你,环境搭好了:

numpy 1.26.2
pandas 2.1.4
matplotlib 3.8.2
sklearn 1.3.2

版本号可能略有差异,但只要是1.x大版本就没问题。注意别用太老的版本(比如pandas 0.x),API可能不一样。

本章知识体系

下面这张图概括了环境搭建的完整流程和关键决策点。说白了就是三部曲:选版本→建环境→装库,每一步都有我踩过的坑,你照着来基本不会翻车。

环境搭建流程 Python版本选择 推荐 3.10 / 3.11 创建虚拟环境 python -m venv venv 安装必备库 pip install pandas ... 踩坑:3.12库兼容 测试需谨慎 注意:激活环境 终端前缀(venv) 验证:导入检查 pip install完成后 核心目标:一个干净可复现的Python环境 每个项目独立,避免依赖冲突,保证课程代码一致运行

最终检查清单:

  • Python版本:3.10 或 3.11 ✅
  • 虚拟环境激活:终端前缀显示 (venv) ✅
  • 四个库全部导入成功,无报错 ✅
  • pip版本:≥21.0(老版本有时不识别新版wheel) ✅

环境搭好,接下来就可以安心做数据分析和可视化了。其实整个课程最枯燥的部分就是这里,但请相信我,这一步做扎实了,后面三指标堆叠图的代码你跑一遍就能出图,不用跟环境折腾。