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

使用Pandas读取XLS文件第二个工作表失败的技术求助

解决读取Excel 97-2003 (.xls)第二个工作表失败的问题

针对你遇到的情况,按以下步骤排查和解决:

1. 确认文件中的所有工作表名称

先通过代码列出文件内的所有工作表,避免因名称拼写错误导致读取失败:

import pandas as pd
xls = pd.ExcelFile(r'c:\folder\file_name.xls')
# 打印所有工作表的实际名称
print(xls.sheet_names)

运行后可以确认目标表的真实名称,比如是否是'Sheet Two'(首字母大写)而非你写的'sheet two',或者是否包含额外空格、特殊字符。

2. 修正路径的转义问题

你的第二行代码中,路径使用双引号加单个反斜杠"c:\folder\file_name.xls",其中\f会被解析为转义字符,导致路径识别错误。正确的路径写法选以下任意一种:

  • 原始字符串(推荐):r"c:\folder\file_name.xls"
  • 正斜杠替代:"c:/folder/file_name.xls"
  • 双反斜杠转义:"c:\\folder\\file_name.xls"

3. 检查依赖库版本

Excel 97-2003 (.xls) 文件依赖xlrd库,但xlrd 2.0及以上版本不再支持.xls格式。若你的pandas版本较高,需确保xlrd为1.2.0版本:

  • 查看当前xlrd版本:
import xlrd
print(xlrd.__version__)
  • 若版本≥2.0,执行以下命令降级:
pip uninstall xlrd
pip install xlrd==1.2.0

4. 修正代码语法错误

你的第一行代码存在字符串未闭合、引号冲突的问题:

# 错误写法:路径字符串未闭合,sheet_name的单引号与外层冲突
my_excel = pd.read_excel(r'c:olderile_name.xls , sheet_name = 'sheet two')

修正后(替换为实际获取到的工作表名称):

my_excel = pd.read_excel(r'c:\folder\file_name.xls', sheet_name='Sheet Two')

完成以上步骤后,重新尝试读取第二个工作表即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 19:40:29