python openpyxl 常用操作(一)

Python openpyxl 常用操作

openpyxl 模块是目前Python 的第三方模块中,对xls、xlsx 文件操作比较全面的一个组件,里面有很多xls的常用操作,比如表合并、xls函数(如求和sum(),而且用法简单)、建统计图等。

openpyxl的安装

pip install openpyxl

 

引入openpyxl 模块Workboot 类并进行实例化

from openpyxl import Workboot

# 实例化Workboot类
wb = Workboot()

一般在实例化Workboot类后,会默认生成一个sheet页,可以直接引用该sheet页。

以下是引用默认sheet页或自己创建sheet页,一个Workboot实例化对象可以同时创建多个sheet页,如下

#引用Workboot默认创建的sheet页
wb = Workboot()

#使用默认的sheet页
ws = wb.active
#重命名sheet页的名称
ws.title = "测试页“


#重新创建一个新的sheet页
ws1 = wb.create_sheet(title="新建sheet表格“)
调换一个sheet页的位置
#创建Workboot实例化对象
wb = Workboot()

ws = wb.create_sheet("新建sheet页")
wb.move_sheet(sheet="创建空sheet",offset=2)
"""
移动sheet页
@sheet 是需要移动sheet页的名称
@offset 将要移动的索引位置
"""

查看当前含有的sheet页,返回列表

#创建Workboot实例化对象
wb = Workboot()

#查看当前存在哪些sheet页,返回list类型 sheets = wb.sheetnames print(sheets)

 查看当前Workboot对象含有哪些worksheet页

#创建Workboot 的实例化对象
wb = Workboot()

#查看当前wb下含有哪些worksheet。
worksheet_list = wb.worksheets
print(worksheet_list)

 删除一个sheet页

#创建Workboot实例化对象
wb = Workboot()

#先查看当前wb下的worksheet信息
worksheet_list = wb.worksheets

# 删除workboot下第1个sheet页
wb.remove(worksheet=wb.worksheets[0])
"""
@worksheet 是workbook的worksheet。可通过wb.worksheets了解worksheets的值
"""

复制一个新的sheet页

#创建Workboot实例化对象
wb = Workboot()

#先查看当前wb下的worksheet信息
worksheet_list = wb.worksheets

# 复制第1个sheet页
wb.copy_worksheet(from_worksheet=wb.worksheets[0])
"""
@worksheet 是workbook的worksheet。可通过wb.worksheets了解worksheets的值
"""

 

openpyxl 模块sheet 页单元格的操作有以下三种方式

1、通过cell方法

#创建Workboot 实例化对象
wb = Workboot()

使用默认的sheet页
ws = wb.active

#通过cell方式,在xlsx中插入数据
#在第1行第3列插入内容:新增数据1
ws.cell(row=1 , column=3 , value="新增数据1")
#在第2行第3列插入内容:新增数据2
ws.cell(row=2 , column=3 , value="新增数据2")

2、通过xlsx表头的字母+数字的形式找到单元格并填写如数据(字母对应所在的列,数字对应所在的行)

#创建Workboot 实例化对象
wb = Workboot()

#使用默认的sheet页
ws = wb.active

#通过xlsx的表头字母+数据的形式,添加数据
#在第1列,第5行中添加内容:新增数据3
ws[A5] = "新增数据3"

3、通过append方法填入数据

#创建Workboot 实例化对象
wb = Workboot()

#使用默认的sheet页
ws = wb.active

#通过append方法向表格中添加新的数据,可以同时添加多条数据
ws.append(["number","value","test","result"],
                 ["01","test","hehe",6],
                 ["02","str","name",92])  

#也可以单条添加或者通过循环的形式添加
ws.append(["number","value","test","result"])
ws.append(["01","test","hehe",6])
ws.append(["02","str","name",92])

 

在完成操作后,保存xlsx文件路径

wb.save("G:\\python_code\\file\\test3.xlsx")

 

在保存后,记得关闭workboot的进程,避免资源的浪费。

wb.close()

 

 来源:https://www.osgeo.cn/openpyxl/tutorial.html#create-a-workbook

posted @ 2023-07-18 09:49  西夏一品唐  阅读(585)  评论(1编辑  收藏  举报