Python自动化办公:使用xlsxwriter写入Excel数据
本文详细介绍如何使用Python的xlsxwriter库进行Excel文件的写入操作。内容涵盖库的安装配置、核心类Workbook与工作簿的初始化、工作表的添加以及单元格数据的写入方法。通过完整代码示例,演示如何读取现有Excel文件并将数据写入新文件,实现基础的自动化办公数据处理流程。
在上一节中,我们掌握了使用xlrd模块读取Excel文件的方法。本节将重点介绍用于写入Excel文件的xlsxwriter模块。掌握本节内容后,您将能够使用Python程序自动生成并写入Excel文件。
Excel写入功能:xlsxwriter模块
安装xlsxwriter模块
安装方法如下:
pip install xlsxwriter如果安装过程中遇到失败或速度过慢的情况,建议更换为国内镜像源进行安装。具体命令为:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple xlsxwriter
在代码中导入该模块:
import xlsxwriterxlsxwriter常用函数解析
初始化Excel对象
book = xlsxwriter.Workbook() # 生成 excel 对象
sheet = book.add.sheet(工作簿名称) # 生成 excel 对象的工作簿名称
获取工作簿对象
| 函数名 | 说明 | 参数 |
|---|---|---|
| xlsxwriter.Workbook() | 生成 excel 对象 | excel 文件名 |
| add_worksheet() | 添加工作簿 | 工作簿名称 |
| sheet.write() | 书写内容 | 行索引、列索引、内容 |
| book.close() | 关闭 excel 对象 | 无 |
具体代码示例如下:
# coding:utf-8
import xlsxwriter # pip install xlsxwriter
excel = xlsxwriter.Workbook('write.xlsx') # 初始化 excel 对象
book = excel.add_worksheet('study') # 添加工作簿
title = ['姓名', '性别', '年龄', '成绩', '等级'] # 定义 write.xlsx 的首行内容
for index, data in enumerate(title): # for循环 利用枚举函数将 title 的内容写入 "write.xlsx" 的首行
book.write(0, index, data)
excel.close()
运行上述代码后的结果如下:


实战演练
本案例的目标是将项目目录下的study.xlsx文件中的数据,完整写入到新的write.xlsx文件中。
实现该功能的代码示例如下:
# coding:utf-8
import xlsxwriter # pip install xlsxwriter
import xlrd
# excel = xlsxwriter.Workbook('write.xlsx') # 初始化 excel 对象
# book = excel.add_worksheet('study') # 添加工作簿
#
# title = ['姓名', '性别', '年龄', '成绩', '等级'] # 定义 write.xlsx 的首行内容
#
# for index, data in enumerate(title): # for循环 利用枚举函数将 title 的内容写入 "write.xlsx" 的首行
# book.write(0, index, data)
# excel.close()
def read(): # 定义一个 read 函数读取 "study.xlsx" 文件
result = []
excel = xlrd.open_workbook('study.xlsx')
book = excel.sheet_by_name('学生手册')
for i in book.get_rows():
content = []
for j in i:
content.append(j.value)
result.append(content)
return result
def write(content): # 定义一个 write 函数 将读取到 "study.xlsx" 的内容写入到 "write.xlsx" 文件
excel = xlsxwriter.Workbook('write.xlsx')
book = excel.add_worksheet('study')
for index, data in enumerate(content):
print(data) # 调试打印写入的每一行内容
for sub_index, sub_data in enumerate(data):
# print(sub_index, sub_data)
book.write(index, sub_index, sub_data)
excel.close()
if __name__ == '__main__':
result = read()
write(result)
程序运行后的结果如下:


至此,关于Python自动化办公中Excel数据写入的教程已介绍完毕。如需了解更多Python Excel数据写入相关内容,建议搜索本站过往文章或继续阅读后续相关教程。感谢大家的支持!
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









