4、Python环境搭建:安装Python、pip、常用库
行,开始动手搭环境。
说实话,这一步看着基础,但我在线下班带学员时,至少有一半的坑都出在这里。你想想看,环境没搭好,后面代码跑不起来,自己还找不到原因,多耽误事。
我个人习惯是先装好一个干净的 Python 解释器,再配 pip,最后把水印需要用到的几个库一口气装完。这样后面三十章基本不用再动环境。
4.1 选哪个 Python 版本?
我建议直接用 Python 3.9 或 3.10。为什么?
- 3.8 太老,有些新库不勤快更新了
- 3.11、3.12 虽然新,但 opencv-python 的预编译包偶尔会缺
- 3.9 和 3.10 是当前生态最稳的区间
我曾经在某次项目里直接装了 Python 3.12,结果 pip install opencv-python 报错,硬是等了一周才出修复版。从那以后我就记住:不要追新,要追稳。
4.2 安装 Python 与 pip
下载安装包时,注意勾选 Add Python to PATH。这个复选框很多人会漏掉。漏掉之后你打开终端敲 python 就会报“不是内部或外部命令”。
安装完成后,打开终端(Windows 下按 Win+R,输入 cmd;macOS/Linux 直接开 Terminal),敲下面两行验证:
python --version
pip --version
理想输出:
Python 3.9.13 | 你的版本号可能略不同 |
pip 23.0.1 from ... (python 3.9) | pip 附带在 Python 安装包里 |
如果 pip 没装上,去 (不要链接,纯说明) 手动下载 get-pip.py 然后 python get-pip.py。不过现代安装包都默认带 pip,极少需要手动搞。
4.3 搭建隔离环境(可跳过,但推荐)
为什么我强调“推荐”?因为水印课程用到的库版本冲突可能性很小,你不建虚拟环境也能跑。但我习惯了每个项目一个 venv,防止以后装其他东西把依赖搞乱。
一行搞定:
python -m venv watermark_env
激活:
- Windows:
watermark_env\Scripts\activate - macOS/Linux:
source watermark_env/bin/activate
激活后终端前面会多一个 (watermark_env) 提示符。舒服。
4.4 安装核心库:一张表看懂
| 库名 | 作用 | 安装命令 |
|---|---|---|
| Pillow | 图像打开、保存、裁剪、像素操作(水印嵌入的基础) | pip install Pillow |
| numpy | 数组运算、矩阵变换(水印算法里到处用它) | pip install numpy |
| opencv-python | 高级图像处理、DWT/DCT 变换、特征提取 | pip install opencv-python |
| matplotlib | 画图、显示对比结果、分析水印效果 | pip install matplotlib |
四个库加起来也就几十 MB,网速正常的话两分钟装完。
我个人习惯一次性安装:
pip install Pillow numpy opencv-python matplotlib
pip 会自动处理依赖顺序。我记得有一次单独装 opencv 时等了半天,后来发现把 numpy 先装上能快不少。
4.5 验证安装
装完别急着关终端。写一段小脚本,能跑通才算完:
from PIL import Image
import numpy as np
import cv2
import matplotlib.pyplot as plt
print("所有库导入成功!")
print("Pillow 版本:", Image.__version__)
print("NumPy 版本:", np.__version__)
print("OpenCV 版本:", cv2.__version__)
print("Matplotlib 版本:", plt.matplotlib.__version__)
如果没报错,恭喜,环境搭建圆满完成。
pip install opencv-python 报错缺少 libGL.so。原因是系统没有图形库。解决方法:brew install libgl1-mesa-glx libglib2.0-0(Linux 类似)。Windows 一般没这问题。
4.6 环境搭建全流程一图览
下面这张图把刚才的步骤串在一起,你跟着走就不会漏:
这张图从左到右、从上到下:下载 → 安装 → 验证 → 创建虚拟环境(可选) → 装库 → 写验证脚本。跟着走,半小时内环境肯定立起来。
4.7 小结
嗯,环境这东西,一次搭好,后面省心。你可能会遇到网络超时、pip 报错、缺少 c++ 编译环境等情况。不用慌,一般搜一下报错信息就能解决。实在不行,先确认 Python 版本和 pip 版本,然后再试一遍安装命令。
我个人觉得,把环境搭建这一步做扎实了,后面水印编码/解码的代码才能跑得顺。下一章我们将正式进入图像基础操作,你先把这四个库都装好,我们到时候直接写代码。
(完)