目录
- Excel 写入 – xlsxwriter
 - xlsxwriter 的安装
 - xlsxwriter 常用函数介绍
 - 初始化 excel 对象
 - 获取工作簿
 - 小实战
 
上一章节我们学习了 excel 的读取模块 – xlrd ,今天章节将学习 excel 的写入模块 – xlsxwriter 。通过该章节的学习,就可以自己主动生成 excel 文件了。
Excel 写入 – xlsxwriter
xlsxwriter 的安装
安装方式:
pip install xlsxwriter
若安装不上或者安装速度过慢,可以换国内的镜像源地址:pip install -i https://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)
运行结果如下:


	声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
		
评论(0)