文档地址:https://xlsxwriter.readthedocs.io/
XlsxWriter是一个Python模块,可用于将文本,数字,公式和超链接写入Excel 2007+ XLSX文件中的多个工作表。
XlsxWriter的功能那可以说是相当强大:
100%兼容的Excel XLSX文件。 完整格式。 合并的单元格。 定义的名称。 图表。 自动过滤器。 数据验证和下拉列表。 条件格式。 工作表PNG / JPEG / BMP / WMF / EMF图像。 丰富的多格式字符串。 单元格注释。 文本框。 与熊猫整合。 用于写入大文件的内存优化模式。
下面代码来自XlsxWriter的一段生成excel表格的方法,可当入门使用,如果有更多生成excel的需求,需要查看XlsxWriter文档进行学习。
'''
Python根据数据生成excel表格
'''
import xlsxwriter
# 定义需要生成表格的数据。
expenses = (
['肖红', '一年级', 100],
['赵英男', '一年级', 100],
['欣怡', '一年级', 90],
['秋水', '一年级', 50],
['王小虎', '二年级', 70],
['陈陆陆', '二年级', 90],
['猴小明', '二年级', 80],
['杜小曼', '二年级', 100],
)
# 定义表格名称 与 保存路径
tabname = '学生成绩.xlsx'
tabpath = 'G:/excel_test'
# 创建一个工作簿并添加一个工作表。
workbook = xlsxwriter.Workbook(tabpath+'/'+tabname)
worksheet = workbook.add_worksheet('Sheet1')
# 添加粗体格式。
bold = workbook.add_format({'bold': True})
# 编写一些头数据。
worksheet.write('A1', '学生姓名', bold)
worksheet.write('B1', '年级', bold)
worksheet.write('C1', '成绩', bold)
# 从第一个单元格开始。 行和列的索引为零。
row = 1
col = 0
# 遍历数据并逐行写出。
for item, grade, cost in (expenses):
worksheet.write(row, col, item)
worksheet.write(row, col + 1, grade)
worksheet.write(row, col + 2, cost)
row += 1
# 用公式写一个总数。
worksheet.write(row, 0, '总成绩',bold)
worksheet.write(row, 2, '=SUM(C2:C5)')
# 关闭对象
workbook.close()
print("\n表格创建完成: "+tabpath+'/'+tabname)
# ......................end