今天是Andy学Python的第59 天哦!
大家好,我是Andy。
由于《Python编程快速上手——让繁琐工作自动化》openpyxl版本为2.1.4,目前openpyxl版本3.0.7,书中介绍的操作方法大多报错。找了几本电子教材,均无openpyxl介绍。本节内容源自openpyxl文档整理,文档地址:https://openpyxl.readthedocs.io/en/stable/index.html。
04.
工作表操作
操作工作表之前,可以查看工作薄中所有工作表名称,这个在上节已经讲过。
语法:wb.sheetnames
注意:该属性后面无小括号,返回工作薄中所有工作表名称的列表。
>>> print(wb.sheetnames)
结果:['Sheet1', 'Sheet2', 'Sheet3']
4.1 添加工作表
方法1 默认从末尾处添加一个新的工作表
from openpyxl import Workbook, load_workbook
wb = openpyxl.load_workbook("1.xlsx")
ws1 = wb.create_sheet("Mysheet") # insert at the end (default)
wb.save("1.xlsx") # 保存
方法2 在第一个工作表位置添加一个新的工作表
from openpyxl import Workbook, load_workbook
wb = openpyxl.load_workbook("1.xlsx")
ws2 = wb.create_sheet("Mysheet1",0) # insert at first position
wb.save("1.xlsx") # 保存
方法3 在倒数第二位添加一个新的工作表
from openpyxl import Workbook, load_workbook
wb = openpyxl.load_workbook("1.xlsx")
ws2 = wb.create_sheet("Mysheet3",-1) # iinsert at the penultimate position
wb.save("1.xlsx") # 保存
4.2 重命名工作表
一般excel按照顺序编号(Sheet1,Sheet2,Sheet3……)。
重命名工作表语法:
sheet.title = 'New Title' # 直接赋值就可以改工作表的名称
4.3 删除工作表
方法一
wb.remove(sheet)
PS:教程是这样写的,鼓捣了两个多小时,没搞定。内存中删除了工作表,打开excel文件发现原工作表仍然存在。采用保存工作薄的方法查看,报错,<Worksheet "张三"> is not in list,原工作表不存在。Why?
先暂时搁置,过几天再来学习,看看错在哪里。
方法二
del wb[sheet]
该方法错误和remove相同,采用del,打开excel文件发现原工作表仍然存在。采用保存工作薄的方法查看,报错,<Worksheet "张三"> is not in list,原工作表不存在。
今天效果非常差,一是没有现成的书,没人教;二是看文档教程,很简略,自己倒腾半天,没实现效果。
好吧,可能网页翻译的教程语言理解有出入,先接着学其他内容吧。
51Day Day up!
向上向善,日进一步!
每天学习,努力成长!
定个小目标,开启成长的旅程,遇见更好的自己。
这是我们和自己的约定,许诺自己不负韶华。
路虽远,行则将至;事虽难,做则必成。
成长的最好时机,就是当下。
Copyright © 2021 Andy学Python
转载事宜请留言 | 获得授权后方可转载