openpyxl 库可实现读Excel文件、写Excel文件和修改Excel文件,但openpyxl 库不支持老版Office2003 的 xls 格式的Excel文档。
一、安装openpyxl模块
1、Windows下Pythonxx\Lib\site-packages目录下安装命令:
pip install openpyxl
2、验证安装是否成功:
新建python文件,导入import openpyxl,不报错说明模块安装成功
二、读写Excel文档常用方法
1、导入openpyxl模块
import openpyxl
2、创建Excel Book 对象
excelBook = openpyxl.Workbook()
3、创建Excel Book 对象时会自动生成一个sheet对象,可通过active获取sheet对象
# 3、创建Excel Book 对象时会默认生成一个sheet对象,可通过active获取sheet对象
sheetName = excelBook.active # 获取当前 sheet 对象
# sheet对象.title获取sheet对象名称
print("创建Excel Book 对象时会默认生成sheet名称:" , sheetName.title)
4、sheet对象.title修改默认sheet名称
# 4、sheet对象.title修改默认sheet名称
sheetName.title = 'Test'
print("修改后的sheet名称:" , sheetName.title)
5、新建sheet对象
Book对象.creat_sheet(title , index)方法可实现创建sheet功能
title:非必填参数,sheet名称,默认名称为Sheet
index:非必填参数,sheet位置,其中0代表第一个位置,1代表第二个位置,默认最后
excelBook.create_sheet('测试') # 新建测试sheet位于最后
6、获取所有sheet对象
Book对象.sheetnames获取所有sheet对象名称,返回列表
print("所有sheet对象名称:" , excelBook.sheetnames)
7、获取某个sheet对象
Book对象[sheet名称]可获取“sheet名称”的sheet对象
print("获取某个sheet:" , excelBook['Test'])
8、单元格写入内容
A)sheet对象[单元格位置]赋值
sheetName["A1"] = '序号'
B)sheet对象.cell(row , col , value)
row:行号,注意openpyxl行数从1开始
col:列数,注意openpyxl列数从1开始
value:单元格内容
sheetName.cell(2 , 1 , 1) # 第二行,第一列单元格内写入1
C)sheet对象.cell(row , col).value赋值
row:行号,注意openpyxl行数从1开始
col:列数,注意openpyxl列数从1开始
sheetName.cell(3 , 1).value = 2 # 第三行,第一列单元格内写入2
9、获取单元格内容
sheet对象.cell(row , col).value获取单元格内容
row:行号,注意openpyxl行数从1开始
col:列数,注意openpyxl列数从1开始
print("第三行,第一列单元格内容:" , sheetName.cell(3 , 1).value)
10、保存Excel文件
Book对象.save(filename)保存Excel文件,openpyxl修改完Excel文档后需使用save()方法保存,才能确保修改内容保存在Excel文档中
filename:文档路径(含文档名称),必填参数
excelBook.save(excelPath)
11、实例
A)字典型数据写入Excel文档
"""
将字典型数据写入Excel中
"