python xlwt 用法演示

import xlwt


def basic_usage():
    """
    xlwt 最基本的用法演示.
    """
    # 新建一个工作薄并添加一个 sheet
    book = xlwt.Workbook()
    sheet = book.add_sheet(sheetname='sheet 1')
    
    # 在指定单元格 (第一行第二列) 写入数据
    sheet.write(0, 1, 'abc')
    """
    第一个参数是行位置, 第二个参数是列位置, 都是从0开始数.
    第三个参数是值, 类型是 Python 基本类型.
    """
    
    # 在指定行写入一行数据
    # 注: xlwt 没有 write_line 之类的方法, 所以要自己逐个单元格写入.
    data = ['aaa', 'bbb', 'ccc']
    rowx = 1  # 假设指定在第二行
    for colx, value in enumerate(data):
        sheet.write(rowx, colx, value)
        
    # 在指定列写入一列数据
    # 注: xlwt 没有 write_col 之类的方法, 所以要自己逐个单元格写入.
    data = ['aaa', 'bbb', 'ccc']
    colx = 2  # 假设指定在第三列
    for rowx, value in enumerate(data):
        sheet.write(rowx, colx, value)
        
    """
    特别注意: 请勿重复向同一单元格写入数据, 这会造成 xlwt 报错.
    """
    
    # 保存文件
    output_path = 'result.xls'
    book.save(output_path)
    """
    注意: xlwt 只支持 xls 格式保存. 如果以 "xlsx" 格式保存, 会导致微软 Excel 无法打开.
    (PS: WPS 2019 是可以打开的, 但本质上仍然是当作 xls 读取了.)
    
    其他注意:
        1. 写单元格的时候, 用的是 sheet.write(rowx, colx, value)
        2. 保存文件的时候, 用的是 book.save(path)
        3. xlwt 只具有写入功能, 如果想要边写边读那是做不到的. 而另一个模块 xlrd 则是只具有
        读取功能, 不支持写入的
    """


def set_cell_bg_color():
    """
    单元格设置背景色.
    """
    # 需要导入 Patter, Style 和 XFStyle
    from xlwt import Pattern, Style, XFStyle
    
    # 新建一个工作薄并添加一个 sheet
    book = xlwt.Workbook()
    sheet = book.add_sheet(sheetname='sheet 1')
    
    # 设置一个黄色底色笔
    my_pattern = Pattern()
    my_pattern.pattern = Pattern.SOLID_PATTERN
    my_pattern.pattern_fore_colour = Style.colour_map['yellow']  # 设置背景色为黄色
    my_style = XFStyle()
    my_style.pattern = my_pattern
    """
    有关 Excel 支持的颜色代码有哪些, 您可以在 Style.colour_map 的源码中看到:
        aqua 0x31
        black 0x08
        blue 0x0C
        blue_gray 0x36
        ...
    也就是您可以使用 Style.colour_map['yellow'], Style.colour_map['aqua'], 或者直接
    使用 0x31, 0x0C 等.
    """
    
    # 在某个单元格中写入底色
    sheet.write(0, 0, 'abc', style=my_style)
    
    # 注意最后一定要保存文件
    output_path = 'result.xls'
    book.save(output_path)

  • 6
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值