今天用python操作excel时,发现xlwt的API中没有对width、height有更多介绍,且使用时也不知道width取多少合适。现在这做个详细介绍
使用版本:
python:2.7.5
xlwt:1.0.0
一:先创建一个excel
\'\'\' Created on 2015-11-19 @author: Administrator \'\'\' import xlwt book = xlwt.Workbook(encoding=\'utf-8\') sheet = book.add_sheet(\'sheet1\')
二、设置列宽度
xlwt中列宽的值表示方法:默认字体0的1/256为衡量单位。
xlwt创建时使用的默认宽度为2960,既11个字符0的宽度
所以我们在设置列宽时可以用如下方法:
width = 256 * 20 256为衡量单位,20表示20个字符宽度
那接下来完成我们的程序
#coding:utf-8 \'\'\' Created on 2015-11-19 @author: Administrator \'\'\' import xlwt book = xlwt.Workbook(encoding=\'utf-8\') sheet = book.add_sheet(\'sheet1\') first_col=sheet.col(0) #xlwt中是行和列都是从0开始计算的 sec_col=sheet.col(1) first_col.width=256*20 book.save(\'width.xls\')
效果就如下:
三、行高
行宽是在单元格的样式中设置的,你可以通过自动换行通过输入文字的多少来确定行高
一般如下方法:
#coding:utf-8 \'\'\' Created on 2015-11-19 @author: Administrator \'\'\' import xlwt book = xlwt.Workbook(encoding=\'utf-8\') sheet = book.add_sheet(\'sheet1\') first_col=sheet.col(0) sec_col=sheet.col(1) first_col.width=256*20 tall_style = xlwt.easyxf(\'font:height 720;\') # 36pt,类型小初的字号 first_row = sheet.row(0) first_row.set_style(tall_style) book.save(\'width.xls\')
效果如下:
四、其它
在xlwt中没有特定的函数来设置默认的列宽及行高
参考文档:
http://reliablybroken.com/b/2011/10/widths-heights-with-xlwt-python/