使用 xlwt 合并单元格时出现 AssertionError (Python)

AssertionError while merging cells with xlwt (Python)

我正在使用 xlwt 生成一些 Excel 工作表,但似乎每当我尝试按行合并单元格时,Python 都会抛出 AssertionError,即使对于像这样简单的代码:

import xlwt

wb = xlwt.Workbook(encoding = 'latin-1')
ws = wb.add_sheet('hey')

ws.write_merge(0,0,8,0,"hi")

wb.save("test.xls")

谁能帮我解决这个问题?我错过了什么?非常感谢你。

TLDR;

也许你的电话应该是:

ws.write_merge(0,0,0,8,"hi")

说明: 更完整的堆栈跟踪:

AssertionError                            Traceback (most recent call last)
<ipython-input-6-c6b20b7b1b27> in <module>()
----> 1 ws.write_merge(0,0,8,0)

/usr/local/lib/python2.7/dist-packages/xlwt/Worksheet.pyc in write_merge(self, r1, r2, c1, c2, label, style)
   1110 
   1111     def write_merge(self, r1, r2, c1, c2, label="", style=Style.default_style):
-> 1112         assert 0 <= c1 <= c2 <= 255
   1113         assert 0 <= r1 <= r2 <= 65535
   1114         self.write(r1, c1, label, style)

我相信(我不确定,但如果我在这里错了请纠正我)write_merge用于将多个单元格(工作表的一部分)合并为一个单元格。参数分别是(我猜!)start_row、end_row、start_col、end_col。 c1 <= c2 and r1 <= r2 必须成立才能将真实部分合并到单个单元格中,这对我来说似乎很自然。

write_merge 方法的参数应按以下顺序工作: sheet.write_merge(start_row,end_row,start_col,end_col,"单元格值") 例如:

ws.write_merge(0,0,0,8,"hi")