【问题标题】:Value Error: row index was 65536 , not allowed by xls. format , how to fix this error值错误:行索引为 65536,xls 不允许。格式,如何解决这个错误
【发布时间】:2019-09-05 21:12:05
【问题描述】:

我有一个包含超过 950,000 行的文件, 当我将文件从 Text 转换为 xls 时,它会在转换过程中出现此错误。如何修改代码以解决此错误:

ValueError: row index was 65536, not allowed by .xls format

另外,如果我将文本文件转换为 xlsx 格式,也会出现同样的错误

任何指导将不胜感激。

如何编辑代码以解决此错误?

import xlwt
import io

book = xlwt.Workbook()
ws = book.add_sheet('First Sheet')  # Add a sheet

with io.open("data.txt", mode="r", encoding="utf-8") as f:
for row_idx, row in enumerate(f):
    row = row.rstrip()

 ws.write(row_idx, 0, row[0:8])
.
.
.
  # and so on...

book.save("excelfile.xls")# if i edit book.save("excelfile.xlxs") it gives the same error

【问题讨论】:

  • @Fabrizio,我查过了,没有重复!
  • xlwt 只写入 xls 格式..尝试 openpyxl.. 这绝对是上述链接的副本
  • @DerekEden,请问如何在我的代码中进行?
  • 您必须在 openpyxl 中执行此操作 .. 文档中有一个简单的示例 openpyxl.readthedocs.io/en/stable/usage.html .. 如果您想要转换的只是一个(或几个)txt 文件,请在旁注您可以在数据选项卡下将文本数据导入excel,或将其粘贴并做文本到列

标签: python excel xls xlwt


【解决方案1】:

您似乎正在尝试构建一个长度超过 2^16 行的 Excel 电子表格。 Excel 不支持这么长的电子表格;这是软件限制。您需要检查文件长度并在达到该点之前停止电子表格的构建。您可能想要继续到另一个工作表(选项卡)或另一个文件。在不了解您的实际应用的情况下,我无法提出特定的解决方案。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2023-03-23
  • 1970-01-01
  • 2017-06-25
  • 2020-11-04
  • 2011-09-16
  • 1970-01-01
  • 2021-06-07
  • 2015-01-11
相关资源
最近更新 更多