【问题标题】:Convert .xlsx to .csv - Can't Find Excel Sheet将 .xlsx 转换为 .csv - 找不到 Excel 工作表
【发布时间】:2019-03-13 17:06:51
【问题描述】:

我正在尝试将 .xlsx 转换为 .csv。来自xls to csv converter我希望使用这个代码:

import xlrd
import csv
wb = xlrd.open_workbook('Book123.xlsx')
sh = wb.sheet_by_index(0)

your_csv_file = open('your_csv_file.csv', 'w')
wr = csv.writer(your_csv_file, quoting=csv.QUOTE_ALL)

for rownum in range(sh.nrows):
    wr.writerow(sh.row_values(rownum))

your_csv_file.close()

但是,当我尝试执行sh = wb.sheet_by_index(0) 时,我找不到工作表。

我也试过wb.sheet_by_name('Sheet1') 得到错误代码:XLRDError: No sheet named <'Sheet1'>。简而言之,由于某些原因,我在文件中找不到任何工作表。谁能帮我解决这个问题?

非常感谢!

【问题讨论】:

  • 尝试使用wb_sheets=wb.sheet_names() 获取工作表名称,并使用从结果中获得的工作表名称来选择工作表,例如wb.sheet_by_name(wb_sheets[0])
  • 它返回一个空列表。但我确信excel文件中有一张包含数据的表格。

标签: excel python-3.x csv xlrd


【解决方案1】:

谢谢, 我发现通过使用将文件类型更改为“Excel book (.xlsx)”来保存文件,我能够找到工作表。该问题是由其他类型的 .xlsx“Srick Open XML Spreadsheet(.xlsx)”处理问题引起的。

【讨论】:

    猜你喜欢
    • 2020-08-30
    • 2013-05-19
    • 1970-01-01
    • 2017-08-21
    • 1970-01-01
    • 2013-07-15
    • 2018-08-27
    • 1970-01-01
    • 2016-06-26
    相关资源
    最近更新 更多