Python Excel数据写入
渴望力量的哈士奇 人气:0上一章节我们学习了 excel 的读取模块 - xlrd ,今天章节将学习 excel 的写入模块 - xlsxwriter 。通过该章节的学习,就可以自己主动生成 excel 文件了。
Excel 写入 - xlsxwriter
xlsxwriter 的安装
安装方式:
pip install xlsxwriter
若安装不上或者安装速度过慢,可以换国内的镜像源地址:pip install -i http://pypi.tuna.tsinghua.edu.cn/simple xlsxwriter
导入:
import xlsxwriter
xlsxwriter 常用函数介绍
初始化 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)
运行结果如下:
加载全部内容