繁体   English   中英

使用 Python3 编写 Excel 电子表格

[英]Writing an Excel spreadsheet with Python3

您好,我想将程序中的一些数据写入电子表格。 我正在运行 python3 并安装了xlsxwriter package。

但对xlsxwriter 来说是全新的

这是我想写成电子表格的字典。

[
    { 
        'name': 'xyz', 
        'data': [
            { 
                'price': '$29.95', 'service': 'website'
            },
            { 
                'price': '$7.08', 'service': 'network'
            }
        ], 
        'total': '$37.03',
        'start_date': '2020-12-01',
        'end_date': '2020-12-01'
    },
    { 
        'name': 'test', 
        'data': [
            { 
                'price': '$112.43', 'service': 'website'
            },
            { 
                'price': '$188.82', 'service': 'network'
            }
        ], 
        'total': '$301.25',
        'start_date': '2020-12-01',
        'end_date': '2020-12-01'
    }
]

这是我想要的 output。

在此处输入图像描述

你能帮我怎么做这个xlsxwriter

您可以根据所需的内容创建行,然后遍历它们以写入文档。 以下代码创建了一个名为xlsxwriter_test.xlsx的文件。 然后创建一个包含行的元组。 然后它遍历行,写入文档,然后关闭它。

import xlsxwriter

workbook = xlsxwriter.Workbook("xlsxwriter_test.xlsx")
worksheet = workbook.add_worksheet()

rows = (
    ["Client Name", "Service", "Price", "Start Date", "End Date", "Total"],
    ["xyz", "website", "$29.95", "12/1/20", "12/31/20", "37.03"],
    [None, "network", "$7.08", "12/1/20", "12/31/20", None],
    [None,None,None,None,None,None],
    ["test", "website", "$112.43", "12/1/20", "12/31/20", "301.25"],
    [None, "network", "$188.82", "12/1/20", "12/31/20", None]
)
row = 0

for name, service, price, startD, endD,total in (rows):
    col = 0
    worksheet.write(row,col, name)
    col += 1
    worksheet.write(row,col, service)
    col += 1
    worksheet.write(row,col, price)
    col += 1
    worksheet.write(row,col, startD)
    col += 1
    worksheet.write(row,col, endD)
    col += 1
    worksheet.write(row,col, total)
    row+=1

workbook.close()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM