下面是Python、NumPy、Pandas、Matplotlib的版本对应关系表(基于官方兼容性文档和实践验证,包含常用Python版本),同时补充了推荐的稳定组合:
常用Python版本对应的库兼容版本
| Python版本 | NumPy兼容版本 | Pandas兼容版本 | Matplotlib兼容版本 | 推荐稳定组合示例 |
|---|---|---|---|---|
| 3.8.x | 1.19.x ~ 1.21.x | 1.1.x ~ 1.3.x | 3.3.x ~ 3.5.x | Python3.8 + NumPy1.21.6 + Pandas1.3.5 + Matplotlib3.5.3 |
| 3.9.x | 1.19.x ~ 1.24.x | 1.1.x ~ 1.5.x | 3.3.x ~ 3.7.x | Python3.9 + NumPy1.23.5 + Pandas1.4.4 + Matplotlib3.6.3 |
| 3.10.x | 1.21.x ~ 1.24.x | 1.4.x ~ 2.0.x | 3.5.x ~ 3.7.x | Python3.10 + NumPy1.24.3 + Pandas1.5.3 + Matplotlib3.7.2 |
| 3.11.x | 1.23.x ~ 2.0.x | 1.5.x ~ 2.2.x | 3.6.x ~ 3.8.x | Python3.11 + NumPy1.26.4 + Pandas2.1.4 + Matplotlib3.8.3 |
| 3.12.x | 1.26.x ~ 2.0.x | 2.1.x ~ 2.3.x | 3.8.x ~ 3.9.x | Python3.12 + NumPy2.0.2 + Pandas2.3.3 + Matplotlib3.9.2 |
关键说明
-
版本范围 :表中是主流兼容区间,部分库的新版本可能向下兼容(如Matplotlib3.8也支持Python3.10);
-
推荐组合:优先选择同时间线的稳定版本(避免跨版本过大),例如Python3.8搭配NumPy1.21(最后支持3.8的版本);
-
依赖约束 :
- Pandas依赖NumPy(如Pandas2.3要求NumPy≥1.26);
- Matplotlib依赖NumPy(如Matplotlib3.8要求NumPy≥1.21);
-
安装建议 :用
pip install "库名>=最低版本,<最高版本"锁定范围,例如:bashpip install "numpy>=1.21,<1.22" "pandas>=1.3,<1.4" "matplotlib>=3.5,<3.6"
注: c:\users\administrator\appdata\roaming\python\python38注意这个目录下的包的干扰