【问题标题】:Unable to read excel file , list index out of range error, cant find Sheets无法读取 excel 文件,列表索引超出范围错误,找不到表格
【发布时间】:2020-05-25 04:44:41
【问题描述】:

我正在尝试读取 excel (.xlsx) 文件并将其转换为数据框。我使用 pandas.ExelFile、pandas.read_excel、openpyxl load_workbook 甚至 io 文件读取方法,但我无法读取此文件的表格。每次我得到列表索引超出范围错误或没有工作表名称时都是 openpyxl 的情况。也试过 xlrd 方法。

temp_df = pd.read_excel("v2s.xlsx",  sheet_name = 0)

temp_df = pd.read_excel("v2s.xlsx",  sheet_name = "Sheet1")

from openpyxl import load_workbook workbook = load_workbook(filename="v2s.xlsx",read_only = True, data_only = True) workbook.sheetnames

Link to excel file

【问题讨论】:

  • 尝试xl = pd.ExcelFile('v2s.xlsx') 然后print(xl.sheet_names) 检查该表是否存在,错误看起来不存在。
  • xl = pd.ExcelFile("v2s.xlsx") print(xl.sheet_names) 这将返回 [] 一个空数组
  • 这回答了你的问题,excel文件是空的
  • @Datanovice excel文件不是空的,上面有一张数据表。

标签: python excel pandas openpyxl xlrd


【解决方案1】:

根据this ticket,该文件以“略有缺陷”的格式保存。

用户发帖称他使用Save As 将文档类型改回普通的 Excel 电子表格文件。

您的文件这种类型:

你需要保存为:

然后运行你的代码

from openpyxl import load_workbook
workbook = load_workbook(filename="v2s_0.xlsx",read_only = True, data_only = True)
print(workbook.sheetnames)

输出:

['Sheet1']

【讨论】:

    猜你喜欢
    • 2021-04-20
    • 1970-01-01
    • 1970-01-01
    • 2016-09-16
    • 2022-01-17
    • 2015-04-27
    • 2020-05-14
    • 1970-01-01
    • 2017-10-30
    相关资源
    最近更新 更多