4. 环境与工具准备:Python 环境搭建、Jupyter Notebook 配置、核心依赖库安装与验证

在开始金融压力测试 A/B 分流实验之前,必须搭建一个稳定、可复现的本地开发环境。本章将指导你完成从 Python 解释器安装到核心依赖库验证的全流程,确保后续所有实验代码能够无故障运行。

4.1 Python 环境搭建

推荐使用 Python 3.9 ~ 3.12 版本,避免使用 3.8 以下或 3.13 以上(部分金融库尚未完全兼容)。建议通过 Miniconda 或 Anaconda 进行环境管理,以隔离不同项目的依赖冲突。

推荐方案: 使用 Miniconda(轻量级) + 独立虚拟环境。避免直接在 base 环境中安装大量包,防止版本冲突。

4.1.1 安装步骤(Windows / macOS / Linux)

  1. 下载对应操作系统的 Miniconda 安装包(官方地址)。
  2. 运行安装程序,勾选“Add Miniconda to PATH”(Windows)或按默认配置完成安装。
  3. 打开终端(Terminal / CMD / PowerShell),验证安装:
conda --version
# 输出示例:conda 24.1.2

python --version
# 输出示例:Python 3.12.2

4.1.2 创建专用虚拟环境

conda create -n stress_test python=3.12 -y
conda activate stress_test

激活后,终端提示符前会出现 (stress_test) 字样,表示已进入隔离环境。

4.2 Jupyter Notebook 配置

Jupyter Notebook 是金融数据分析与压力测试实验的首选交互式工具。它支持代码、可视化、Markdown 文档混排,非常适合 A/B 分流策略的迭代验证。

4.2.1 安装与启动

# 在 stress_test 环境中安装
conda install jupyter notebook -y

# 启动 Jupyter Notebook
jupyter notebook

启动后浏览器会自动打开 http://localhost:8888/tree,默认工作目录为终端启动时的路径。

4.2.2 配置内核绑定

确保 Jupyter 使用当前虚拟环境的内核:

conda install ipykernel -y
python -m ipykernel install --user --name stress_test --display-name "Python (stress_test)"

重启 Jupyter 后,在“New”下拉菜单中即可选择 Python (stress_test) 内核。

常见错误: 如果 Jupyter 中 import 库失败,通常是因为内核未绑定到正确的虚拟环境。请重新执行内核安装命令,并确认终端中 conda activate stress_test 已生效。

4.3 核心依赖库安装与验证

金融压力测试 A/B 分流涉及数据处理、统计分析、可视化与轻量级 Web 服务。以下五个库是本次课程的核心依赖:

库名 版本要求 主要用途
pandas ≥ 2.0 数据清洗、分组聚合、时间序列处理
numpy ≥ 1.24 数值计算、矩阵运算、随机数生成
scipy ≥ 1.11 统计分布、假设检验、优化算法
matplotlib ≥ 3.7 图表绘制、分布可视化、回测曲线
flask ≥ 3.0 轻量级 A/B 分流 API 服务

4.3.1 批量安装命令

conda install pandas numpy scipy matplotlib flask -y

如果使用 pip(不推荐混用,但可备选):

pip install pandas numpy scipy matplotlib flask

4.3.2 版本验证脚本

在 Jupyter Notebook 中新建一个 Cell,粘贴以下代码并运行:

import pandas as pd
import numpy as np
import scipy
import matplotlib
import flask

print(f"pandas      : {pd.__version__}")
print(f"numpy       : {np.__version__}")
print(f"scipy       : {scipy.__version__}")
print(f"matplotlib  : {matplotlib.__version__}")
print(f"flask       : {flask.__version__}")

print("\n✅ 所有核心库导入成功,版本符合要求!")

预期输出示例:

pandas      : 2.2.0
numpy       : 1.26.4
scipy       : 1.12.0
matplotlib  : 3.8.3
flask       : 3.0.2

✅ 所有核心库导入成功,版本符合要求!
验证要点: 如果某个库报 ModuleNotFoundError,请检查是否在正确的虚拟环境中执行安装命令。如果版本过低,使用 conda update <库名> 升级。

4.4 环境架构总览

下图展示了从底层操作系统到上层应用服务的完整技术栈关系:

金融压力测试 A/B 分流 — 环境技术栈 操作系统层(Windows / macOS / Linux) Conda 虚拟环境(stress_test) Python 3.12 解释器 pandas numpy scipy matplotlib flask Jupyter Notebook(交互式实验层) 所有库通过 Conda 统一管理

4.5 常见问题与快速排查

问题现象 可能原因 解决方案
conda: command not found Miniconda 未加入 PATH 重新安装并勾选“Add to PATH”,或手动添加环境变量
Jupyter 无法启动 端口 8888 被占用 jupyter notebook --port=8889 更换端口
导入库报错 内核未绑定虚拟环境 重新执行 python -m ipykernel install
版本过低 Conda 源未更新 conda update --all 或指定版本安装
环境就绪检查清单:
  • ✅ Conda 虚拟环境 stress_test 已激活
  • ✅ Jupyter Notebook 已安装且内核绑定正确
  • ✅ 五个核心库全部导入成功,版本 ≥ 最低要求
  • ✅ 浏览器可正常打开 Jupyter 并创建 Notebook 文件