使用xlsxwriter写入单元格时是否可以应用多个单元格格式?

时间:2015-02-25 17:15:14

标签: python export-to-excel xlsxwriter

我是xlsxwriter的新手,所以感谢任何帮助。我正在尝试将多个单元格格式应用于xlsxwriter中的单元格,在环顾四周之后,我没有看到任何显示这是可能的信息,但是想在这里询问并确定。

我的代码片段:

wb = xlsxwriter.Workbook('test.xlsx')
ws1 = wb.add_worksheet()
calign = wb.add_format()
calign.set_align('center')
wrap = wb.add_format()
wrap.set_text_wrap()

ws1.write(0, 0, 'Username', calign, wrap)

它给了我错误:

TypeError: write_string() takes at most 5 arguments (6 given)

我理解错误的原因是我给它多了一个参数而不是它。但是xlsxwriter中的函数与xlwt中的easyXF类似吗?

用于编写应用多种单元格格式的单元格的easyxf函数示例:

format = xlwt.easyxf('alignment: horiz centre, wrap on')
ws1.write(0,0,'Text', format)

我正在使用xlsxwriter作为条件格式化功能,因此除非单元格格式比条件格式更重要,否则切换到xlwt不是一个选项。

感谢。

1 个答案:

答案 0 :(得分:1)

在调查sourcedocumentation之后,我不得不说,我担心不可能指定多种格式格式,或将多种格式合并为一种格式Format上课。

必须添加新格式

new_format = wb.add_format()
new_format.set_align('center')
new_format.set_text_wrap()

ws1.write(0, 0, 'Username', new_format)

仅供参考,还有一个write_rich_string()方法,它允许多种格式 - 但我认为这不是你要找的,因为它会将多种格式应用于字符串的不同部分/片段。 / p>