Python实战:使用Python写入Excel文件
程序员文章站
2022-03-26 16:51:17
...
一、基本概念
在Excel中主要涉及到三个概念:Workbooks,Sheets,Cells。其中Workbook就是一个excel工作表;Sheet是工作表中的一张表页;Cell就是简单的一个格。一般读取和写入Excel基本上按如下三步操作:打开Workbook,定位Sheet,操作Cell。下面分读和写分别介绍python的几个常见的处理方式。
二、写入Excel
下面我们使用一个案例来演示Python写入Excel的过程。模拟一份学生信息,将学生信息写入到一个Excel文件中。
- 引入库xlwt
import xlwt
如果没有xlwt库的话可以使用pip导入该库:
pip install xlwt
- 获取一个Workbook,设置编码集为“UTF-8”
work_book = xlwt.Workbook(encoding="UTF-8")
- 在Workbooks中生成一个Sheet
worksheet = work_book.add_sheet(sheet_name)
- 将记录写入到单元格中
# row 代表行,col代表列,data代表要填写的内容
worksheet.write(row, col, data)
- 保存Workbook保存文件中
work_book.save(self.filename)
三、实战
下面我们演示一个实际案例,使用xlwt库写入如下表格信息:
完整代码演示:
# -*- coding: utf-8 -*-
# 写excel
import xlwt
class WriteExcel:
# 初始化
def __init__(self, filename, sheet_name):
self.work_book = xlwt.Workbook(encoding="UTF-8")
self.worksheet = self.work_book.add_sheet(sheet_name)
self.filename = filename
self.row = 0
# 保存Excel
def save(self):
self.work_book.save(self.filename)
# 写入文件头
def add_head(self, key, value):
# 向单元格中写入内容
self.worksheet.write(self.row, 0, key)
self.worksheet.write(self.row, 1, value)
self.row += 1
# 写入明细
def add_list(self, table_head, table_detail):
self.row += 1
for i, value in enumerate(table_head):
self.worksheet.write(self.row, i, value)
for rows in table_detail:
self.row += 1
for i, key in enumerate(rows):
self.worksheet.write(self.row, i, rows[key])
if __name__ == "__main__":
list_head = ["学号", "姓名", "性别"]
list_detail = [{"student_id": "1001", "name": "张三", "sex": "男"},
{"student_id": "1002", "name": "李四", "sex": "女"},
{"student_id": "1003", "name": "王五", "sex": "男"}]
writeExcel = WriteExcel("writeExcel.xlsx", "学生信息")
writeExcel.add_head("学院名:", "A学院")
writeExcel.add_head("班级名:", "B系一班")
writeExcel.add_head("人数:", "50")
writeExcel.add_list(list_head, list_detail)
writeExcel.save()
运行代码如下:
表格内容如下:
四、相关链接
如下链接还可了解Python其他相关内容,希望相关内容能给予帮助。谢谢!
链接1:Python实战:Python读取Excel文件
下一篇: Json字符串格式化转成java实体类