You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用pytest测试pandas时出现KeyError问题求助

解决Pandas测试套件运行时出现KeyError的问题

嘿,我来帮你搞定这个头疼的KeyError问题!先理清楚你的情况:你用的是Python 3.5.2,搭配pip 8.1.1,已经装了pandas和pytest 3.5.1,但按照官方文档跑测试套件时触发了KeyError,对吧?结合你的老版本环境,大概率是版本兼容或者依赖安装不完整的问题,给你几个一步步解决的方案:

1. 先把pip升级到兼容Python 3.5的最新版本

你的pip版本8.1.1实在太老了,对新一点的包依赖处理容易出问题。注意Python 3.5已经停止维护,最高只能升级到pip 20.3.x版本,执行这条命令:

python3 -m pip install --upgrade pip==20.3.4

升级后再处理后续步骤,能避免很多依赖安装的坑。

2. 重新安装pandas和测试依赖,确保完整性

先卸载现有的pandas和pytest,然后重新安装时带上必要的测试依赖:

python3 -m pip uninstall -y pandas pytest
python3 -m pip install pandas pytest==3.5.1 pytest-cov

这里加上pytest-cov是因为pandas的部分测试用例会依赖它,之前没装的话可能会触发奇怪的错误。

3. 用正确的方式运行测试套件

很多人容易搞错测试命令的路径,给你个靠谱的流程:

  • 先打开Python交互环境,找到pandas的安装路径:
import pandas
print(pandas.__path__)

你会得到类似['/usr/local/lib/python3.5/site-packages/pandas']的输出,记住这个路径。

  • 然后在终端cd到该路径的上级目录(比如/usr/local/lib/python3.5/site-packages/),运行测试命令:
python3 -m pytest pandas/tests/ -xvs

参数解释:-x让测试在第一个错误时停止,-v显示详细的测试用例信息,-s保留测试的输出内容,这样你能清楚看到是哪个测试用例抛出了KeyError,方便进一步排查。

4. 锁定pandas到兼容Python 3.5的版本

如果上面的步骤还是不行,那大概率是pandas版本和Python 3.5不兼容。Python 3.5支持的最后一个pandas大版本是0.25.x,你可以指定安装这个版本试试:

python3 -m pip install pandas==0.25.3

安装完成后再重新运行测试,应该能解决版本不兼容导致的KeyError问题。

内容的提问来源于stack exchange,提问作者FerdousTheWebCoder

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 09:13:54