您可以估计(或使用等宽字体)来实现此目的。假设数据是一个嵌套数组,例如[[‘a1’,’a2’],[‘b1’,’b2’]]
我们可以获取每一列中的最大字符数。然后设置宽度。宽度正好是等宽字体的宽度(如果至少未更改其他样式,则为宽度)。即使您使用可变宽度的字体,这也是一个不错的估计。这不适用于公式。
from openpyxl.utils import get_column_lettercolumn_widths = []for row in data: for i, cell in enumerate(row): if len(column_widths) > i: if len(cell) > column_widths[i]: column_widths[i] = len(cell) else: column_widths += [len(cell)]for i, column_width in enumerate(column_widths): worksheet.column_dimensions[get_column_letter(i+1)].width = column_width
有点骇人听闻,但您的报告将更具可读性。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)