Day059|用Python處理excel數據之二

今天是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

轉載事宜請留言 | 獲得授權後方可轉載

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章