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

Python3.6 IDLE中Pandas读取Excel返回空DataFrame的问题求助

解决IDLE中Pandas读取Excel返回空DataFrame的问题

我来帮你排查一下这个问题——你遇到的Empty DataFrame Columns: [] Index: []情况,大概率是以下几个常见原因导致的,咱们一步步来解决:

1. 先检查文件路径是否正确

Spyder和IDLE的默认工作目录很可能不一样,你在代码里写的'file.xlsx'是相对路径,IDLE可能找不到这个文件。

验证方法:在IDLE里先运行这段代码,看看当前工作目录是哪里:

import os
print(os.getcwd())

然后确认你的file.xlsx是不是在这个目录里。如果不在,有两个解决办法:

  • 把Excel文件移到IDLE显示的当前工作目录里;
  • 改用文件的绝对路径,比如:
    df = pd.read_excel('C:/你的文件夹路径/file.xlsx', usecols=['A','B'])
    

2. 确认Excel列名是否和代码匹配

有时候Excel里的列名可能有你没注意到的细节:比如大小写(比如实际列名是a而不是A)、前后空格(比如 A),这会导致usecols=['A','B']匹配不到任何列,返回空DataFrame。

你可以先去掉usecols参数,读取整个Excel文件,看看实际的列名是什么:

import pandas as pd
df = pd.read_excel('file.xlsx')
print(df.columns)

根据输出的列名,再调整usecols里的参数,比如列名是小写就改成['a','b'],有空格就写成[' A',' B']。

3. 检查xlrd版本兼容性

注意:xlrd 2.0及以上版本不再支持读取.xlsx格式的文件,只能读.xls格式。如果你的file.xlsx是xlsx格式,而IDLE环境里装的是高版本xlrd,就会出现读不到内容的情况。

解决办法二选一:

  • 安装低版本的xlrd:
    pip install xlrd==1.2.0
    
  • 改用openpyxl引擎读取xlsx文件(需要先安装openpyxl):
    pip install openpyxl
    
    然后修改代码:
    df = pd.read_excel('file.xlsx', usecols=['A','B'], engine='openpyxl')
    

你可以按这个顺序排查,应该能解决问题。

内容的提问来源于stack exchange,提问作者Artur Müller Romanov

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 08:18:17