import xlwt class Workbook(object0): ‘‘‘ 工作簿类,使用xlwt创建excel文件时,首先要实例化此类的对象 ‘‘‘ def __init__(self, encoding=‘ascii‘, style_compression=0): pass def add_sheet(self,sheetname, cell_overwrite_ok=False): ‘‘‘ 在工作簿中创建工作表 :param sheetname: 工作表的名字 :param cell_overwrite_ok: 如果值为True,则可以像单元格中多次写入数据(覆盖写),相当于修改单元格的数据,如果值为False则多次写入会引发异常。 :return: 返回一个工作表对象(也就是Worksheet()对象) ‘‘‘ pass def save(self,filename_or_stream): ‘‘‘ 将文件以Excel的格式进行保存 :param filename_or_stream:Excel的文件名 :return: ‘‘‘ pass
class Worksheet(object): ‘‘‘ 工作表类 ‘‘‘ def __init__(self, sheetname, parent_book, cell_overwrite_ok=False): ‘‘‘ 实例化对象的参数 :param sheetname: 工作表名 :param parent_book: 工作簿对象 :param cell_overwrite_ok:覆盖写单元格(如果为True可以覆盖写单元格,为False如果覆盖写会抛异常) ‘‘‘ pass def write(self, r, c, label="", style=xlwt.Style.default_style): ‘‘‘ 将数据写入工作表的单元格中 :param r: row的缩写,表示行,从0开始计数。 :param c: column的缩写,表示列,从0开始计数。 :param label:要写入的数据(支持的数据类型:int,long,float,字符串,日期,TRUE,FALSE,xlwt.Formula等) :param style:表格样式(样式类:Font, Alignment, Borders, Pattern, Protection。样式函数:easyxf, easyfont, add_palette_colour) :return: ‘‘‘ pass
import xlwt # 实例化一个工作簿对象 workbook = xlwt.Workbook(encoding = ‘utf-8‘) # 获取工作表对象Worksheet worksheet = workbook.add_sheet(‘work_sheet‘) # 向工作表中添加数据(参数对应 行, 列, 值) for i in range(3): for j in range(3): worksheet.write(i,j, label = ‘test_‘ + str(j),) # 保存数据到硬盘 workbook.save(r‘i:\Excel_test.xls‘)
最终我们会看到如下图所示:
class Font(object): def __init__(self): # twip = 1/20 of a point = 1/1440 of a inch # usually resolution == 96 pixels per 1 inch # (rarely 120 pixels per 1 inch or another one) self.height = 0x00C8 # 200: this is font with height 10 points 字体高度 self.italic = False # 斜体 self.struck_out = False # 删除线 self.outline = False # 字体轮廓(没发现有什么变化) self.shadow = False # 字体阴影 self.colour_index = 0x7FFF # 这个字体颜色貌似有限制,没太搞懂,范围是0x00到0x35之间有颜色,超过这个范围都是黑色,最大不能超过0xFFFF否则会报错。 self.bold = False # 粗体 self._weight = 0x0190 # 0x02BC gives bold font # 字体宽度 self.escapement = self.ESCAPEMENT_NONE #字体在单元格中位置,0x00正常,0x01字体上标,0x02字体下标。 self.underline = self.UNDERLINE_NONE # 默认字体不带下划线,0x01单下划线,0x02和0x01差不多,0x21双下划线,0x02和0x21差不多 self.family = self.FAMILY_NONE # 不清楚做什么的,默认没有,0x01罗马家族,0x02瑞士家族,0x03现代家族,0x04脚本家族,0x05描述家族 self.charset = self.CHARSET_SYS_DEFAULT # 字符集,字符集选项 CHARSET_ANSI_LATIN = 0x00 CHARSET_SYS_DEFAULT = 0x01 CHARSET_SYMBOL = 0x02 CHARSET_APPLE_ROMAN = 0x4D CHARSET_ANSI_JAP_SHIFT_JIS = 0x80 CHARSET_ANSI_KOR_HANGUL = 0x81 CHARSET_ANSI_KOR_JOHAB = 0x82 CHARSET_ANSI_CHINESE_GBK = 0x86 CHARSET_ANSI_CHINESE_BIG5 = 0x88 CHARSET_ANSI_GREEK = 0xA1 CHARSET_ANSI_TURKISH = 0xA2 CHARSET_ANSI_VIETNAMESE = 0xA3 CHARSET_ANSI_HEBREW = 0xB1 CHARSET_ANSI_ARABIC = 0xB2 CHARSET_ANSI_BALTIC = 0xBA CHARSET_ANSI_CYRILLIC = 0xCC CHARSET_ANSI_THAI = 0xDE CHARSET_ANSI_LATIN_II = 0xEE CHARSET_OEM_LATIN_I = 0xFF self.name = ‘Arial‘ # 字体
import xlwt # 实例化一个工作簿对象 workbook = xlwt.Workbook(encoding = ‘utf-8‘) # 获取工作表对象Worksheet worksheet = workbook.add_sheet(‘work_sheet‘) # 实例化表格样式对象 xstyle = xlwt.XFStyle() # 设置字体样式 xfont = xlwt.Font() xfont.colour_index = 0x04 # 设置字体颜色 xfont.bold = True # 字体加粗 xfont.height = 20 * 18 # 设置字体高度(20是基数不变,18是字号用于调整大小) xfont.underline = 0x01 # 设置字体带下划线 xfont.name = ‘华文彩云‘ # 设置字体 # 将字体对象赋值给样式对象 xstyle.font = xfont for i in range(3): for j in range(3): # 向工作表中添加数据(参数对应 行, 列, 值,样式) worksheet.write(i,j, label = ‘test_‘ + str(j),style=xstyle) # 保存数据到硬盘 workbook.save(r‘i:\2.xls‘)
如果一切顺利,打开2.xls会看到如下:
----------------------------------------------------------------------------未完待续------------------------------------------------------------------------------
原文:https://www.cnblogs.com/caesar-id/p/11802440.html