• python(xlsxwriter模块使用)


    XlsxWriter简介
    XlsxWriter是一个Python模块,可用于在Excel 2007+ XLSX文件中写入多个工作表的文本,数字,公式和超链接。它支持格式化等功能。可到官网了解更多详情,官网链接:https://xlsxwriter.readthedocs.io/

    安装XlsxWriterd
    pip install XlsxWriter
    1
    实例1:创建一个xlsx文件,并写入内容
    import xlsxwriter

    # 创建工作簿并添加工作表
    workbook = xlsxwriter.Workbook('demo1.xlsx')
    worksheet = workbook.add_worksheet()

    # 写入数据到A1
    worksheet.write('A1', 'Hello world')

    # 关闭excel文件
    workbook.close()


    实例2:xlsx的的简单应用
    假设我们有一些关于我们想要转换为Excel XLSX文件的月度支出的数据:

    expenses = (
    ['Rent', 1000],
    ['Gas', 100],
    ['Food', 300],
    ['Gym', 50],
    )

    要做到这一点,我们可以从一个小程序开始,如下所示:

    import xlsxwriter

    # 创建工作簿并添加工作表。
    workbook = xlsxwriter.Workbook('Expenses01.xlsx') # 设置输出路径为当前目录下
    worksheet = workbook.add_worksheet()

    # 下面是我们想要写入工作表的一些数据。
    expenses = (
    ['Rent', 1000],
    ['Gas', 100],
    ['Food', 300],
    ['Gym', 50],
    )

    # 从第一个单元格开始。行和列为零索引。
    row = 0
    col = 0

    # 迭代数据并逐行写出。
    for item, cost in (expenses):
    worksheet.write(row, col, item)
    worksheet.write(row, col + 1, cost)
    row += 1

    # 使用公式计算总和。
    worksheet.write(row, 0, 'Total')
    worksheet.write(row, 1, '=SUM(B1:B4)')

    # 不要忘记关闭文件
    workbook.close()

    运行程序后,我们可以在刚刚设置的目录下找到‘Expenses01.xlsx’文件。
    Expenses01.xlsx 打开后如下图所示:


    实例3:向xlsx文件添加格式
    在上一节中,我们使用Python和XlsxWriter模块创建了一个简单的电子表格。

    这将所需的数据转换为Excel文件,但看起来有点光鲜。为了使信息更清晰,我们想添加一些简单的格式,如下所示:


    重点观察注释部分即可,大部分代码与实例2相同,对比实例2与实例三的异同

    import xlsxwriter

    workbook = xlsxwriter.Workbook('Expenses02.xlsx')
    worksheet = workbook.add_worksheet()

    # 使用add_fromat方法设置单元格的格式
    bold = workbook.add_format({'bold': True}) # 添加粗体格式
    money = workbook.add_format({'num_format': '$#,##0'}) # 添加数字格式

    # 在worksheet的write方法中的第三个参数写上刚刚设置的格式参数,即可为单元格填充格式
    worksheet.write('A1', 'Item', bold) # 设置标题栏为粗体
    worksheet.write('B1', 'Cost', bold)

    expenses = (
    ['Rent', 1000],
    ['Gas', 100],
    ['Food', 300],
    ['Gym', 50],
    )

    row = 1
    col = 0

    for item, cost in (expenses):
    worksheet.write(row, col, item)
    worksheet.write(row, col + 1, cost, money) # 设置数字格式
    row += 1

    worksheet.write(row, 0, 'Total', bold)
    worksheet.write(row, 1, '=SUM(B2:B5)', money)

    workbook.close()

    1、xlsxwriter模块的简单使用:

         xlsxwriter模块主要用来生成excel表格,插入数据、插入图标等表格操作。

         1.1 基本功能

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    import xlsxwriter   #导入模块
     
    workbook = xlsxwriter.Workbook('new_excel.xlsx')     #新建excel表
     
    worksheet = workbook.add_worksheet('sheet1')       #新建sheet(sheet的名称为"sheet1")
     
    headings = ['Number','testA','testB']     #设置表头
     
    data = [
        ['2017-9-1','2017-9-2','2017-9-3','2017-9-4','2017-9-5','2017-9-6'],
        [10,40,50,20,10,50],
        [30,60,70,50,40,30],
    ]                                                              #自己造的数据
     
     
     
    worksheet.write_row('A1',headings)
     
    worksheet.write_column('A2',data[0])
    worksheet.write_column('B2',data[1])
    worksheet.write_column('C2',data[2])                   #将数据插入到表格中
     
     
    workbook.close()          #将excel文件保存关闭,如果没有这一行运行代码会报错

      查看生成excel的结果:

            

       1.2 将excel中插入折线图     

     View Code

       生成图表如下图

        

     2、xlsxwriter模块常用功能介绍:

     2.1、设置单元格的格式:

     2.1.1、通过字典的方式直接设置格式。          

    复制代码
    1 workfomat = workbook.add_format({
    2     'bold':  True,                 #字体加粗
    3     'border':1,                    #单元格边框宽度
    4     'align':    'center',          #对齐方式
    5     'valign':   'vcenter',         #字体对齐方式
    6     'fg_color': '#F4B084',         #单元格背景颜色
    7 })
    复制代码

    2.1.2、通过format对象的方式设置单元格格式。

    1 workfomat = workbook.add_format()
    2 workfomat.set_bold(1)                #设置边框宽度
    3 workfomat.set_num_format('0.00')     #格式化数据格式为小数点后两位
    4 workfomat.set_align('center')        #设置对齐方式
    5 workfomat.set_fg_color('blue')       #设置单元格背景颜色
    6 workfomat.set_bg_color('red')        #设置单元格背景颜色 (经测试和上边的功能一样)

    2.1.3、一些单元表的操作,像这样的操作还有好多,可以根据自己的需要去进行研究。

    1 worksheet.merge_range('D1:D7','合并单元格')        #合并单元格
    2 worksheet.set_tab_color('red')                      #设置sheet标签颜色
    3 worksheet.set_column('A:D',25)                      #设置A到D列的列宽为25
    4 worksheet.write_formula('E2','=B2/C2')             #设置表格中的计算,‘E2’是计算结果,'=B2/C2'是计算公式

    2.2、常用图表类型:

    复制代码
    1 #area:面积图
    2 #bar:直方图
    3 #colume:柱状图
    4 #line:折线图
    5 #pie:饼图
    6 #doughnut:环形图
    7 #sactter:散点图
    8 #stock:股票趋势图
    9 #radar:雷达图
    复制代码
  • 相关阅读:
    jquery-卡片翻转
    bootstrap-3-验证表单
    jqeury-地区三级联动
    bootstrap-实现loading效果
    Thymeleaf-语法整理
    jquery-网站收藏
    ssh-免密登录批量发送脚本
    linux-网站收藏
    关闭防火墙
    hadoop-网站收藏
  • 原文地址:https://www.cnblogs.com/lgj8/p/12115150.html
Copyright © 2020-2023  润新知