欢迎访问宙启技术站
智能推送

使用xlsxwriter模块在python中生成一个新的xlsx工作簿

发布时间:2023-12-14 06:35:58

xlsxwriter是一个用于生成Excel文件的Python模块。它可以创建新的xlsx工作簿,并允许在工作簿中添加工作表、单元格、格式化文本、图表等。

以下是一个示例,展示了如何使用xlsxwriter模块生成一个新的xlsx工作簿:

import xlsxwriter

# 创建一个新的xlsx工作簿
workbook = xlsxwriter.Workbook('example.xlsx')

# 添加一个新的工作表
worksheet = workbook.add_worksheet()

# 设置一些列的宽度
worksheet.set_column('A:A', 20)
worksheet.set_column('B:B', 15)

# 定义一些格式
header_format = workbook.add_format({
    'bold': True,
    'align': 'center',
    'valign': 'vcenter',
    'fg_color': '#D7E4BC',
    'border': 1
})
data_format = workbook.add_format({'align': 'left'})

# 写入标题行
worksheet.write('A1', '姓名', header_format)
worksheet.write('B1', '年龄', header_format)

# 写入数据行
data = [
    ['张三', 25],
    ['李四', 30],
    ['王五', 28],
    ['赵六', 35]
]
row = 1
col = 0

for name, age in data:
    worksheet.write(row, col, name, data_format)
    worksheet.write(row, col + 1, age, data_format)
    row += 1

# 添加一个图表
chart = workbook.add_chart({'type': 'column'})
chart.add_series({
    'name': '年龄',
    'categories': '=Sheet1!$A$2:$A$5',
    'values': '=Sheet1!$B$2:$B$5'
})
worksheet.insert_chart('D2', chart)

# 关闭工作簿
workbook.close()

在这个示例中,我们首先导入了xlsxwriter模块。然后,我们创建了一个新的xlsx工作簿,命名为example.xlsx。接下来,我们添加了一个新的工作表,并设置了一些列的宽度。然后,我们定义了一些格式,包括标题行的格式和数据行的格式。

然后,我们写入了标题行和数据行。最后,我们添加了一个柱状图,并将图表插入到工作表中。

最后,我们关闭了工作簿。

运行上述代码后,会生成一个新的xlsx文件,其中包含一个工作表和一个柱状图。工作表中包含了姓名和年龄的数据,柱状图展示了不同人的年龄。