Python自动化办公之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()

运行结果如下:

Python自动化办公之Excel数据的写入_第1张图片

Python自动化办公之Excel数据的写入_第2张图片

小实战

将项目中的 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数据的写入_第3张图片

Python自动化办公之Excel数据的写入_第4张图片

到此这篇关于Python自动化办公之Excel数据的写入的文章就介绍到这了,更多相关Python Excel数据写入内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

你可能感兴趣的:(Python自动化办公之Excel数据的写入)