上篇文章写了pandas读取Excel文件的操作,但实际应用中,我们还需要对Excel指定单元格进行写入操作。
pandas模块写入
pandas模块方法写入,简单粗暴,就是把整个Excel文件重写
import pandas as pd
file_path = '测试用例.xlsx'
# 读取Excel文件内容,注意一定要读入表头,否则最后保存文件时会少了表头
raw_data = pd.read_excel(file_path,header=None).values
# 对第4行8列单元格赋值
raw_data[3][7] = "插入的结果3"
data = pd.DataFrame(raw_data)
# 将修改过的内容保存到新的Excel文件中
# index=False 和haeder=False:不自动加表头列头,如不知道什么意思,去掉运行试下就懂
data.to_excel('测试用例1.xlsx',index = False,header=False)
预期结果:
openpyxl模块写入
本质应该也是重写整个Excel文件,但不同的是,它会保留之前表格的格式
import openpyxl as op
file_path = '测试用例.xlsx'
# 读取Excel文件中的所有工作表
tables = op.load_workbook(file_path)
# 选择Sheet1工作表
table =tables['Sheet1']
# 在第2行第8列插入数据
table.cell(2, 8, '插入的内容openpyxl')
# 保存文件
tables.save('测试用例1.xlsx')
预期结果:
使用openpyxl有一点需要注意,它的行列号不是从0开始而是1