pandas读取Excel指定usecols报列不匹配错误,提取store_code列表求助
问题修复方案
核心错误原因
- 读取方法不匹配:
pd.read_csv()仅支持读取CSV文本格式文件,你用该方法读取.xlsx格式的Excel文件,会导致文件内容解析错乱,无法正确识别表头,你报错中提到的未找到CategoryName列就是解析错乱触发的异常提示 - 列名配置错误:你需要提取
store_code列的内容,但代码中配置的筛选列是storeName,和实际需求、Excel表头不符
修正后代码
首先需要先安装Excel读取依赖,执行命令:pip install openpyxl
完整代码如下:
import pandas as pd # 配置需要提取的目标列 target_col = ["store_code"] # 调用正确的Excel读取方法 df = pd.read_excel('/home/preety/Downloads/my_store.xlsx', usecols=target_col) # 将列值转为列表 store_code_list = df['store_code'].tolist() # 验证输出 print("store_code列表内容:", store_code_list)
排查建议
如果修改后仍然提示列名不匹配,可以先执行以下代码打印所有识别到的表头,确认列名拼写是否存在空格、大小写等差异:
import pandas as pd df = pd.read_excel('/home/preety/Downloads/my_store.xlsx') print("当前识别到的所有表头:", df.columns.tolist())
内容的提问来源于stack exchange,提问作者Preety Joshi
相关产品推荐
相关产品推荐

