小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Python 操作 Excel 教程(2) | 如何通過(guò)代碼來(lái)自動(dòng)化操作工作表?

 知識(shí)情報(bào)院 2022-02-21

Excel 的基本對(duì)象有工作簿workbook、工作表worksheet、行row、列column、單元格cell以及單元格區(qū)域range等;面向?qū)ο笫擒浖こ讨械闹匾枷?;Python 也是面向?qū)ο蟮木幊陶Z(yǔ)言,我們把 Excel 看成一個(gè)對(duì)象的集合,最基礎(chǔ)的對(duì)象是單元格cell,單元格不能再分,單元格有名稱(chēng)(行列),有屬性值(內(nèi)容)等;我們控制 Excel,其實(shí)也是將其作為一個(gè)對(duì)象,來(lái)改變它的屬性值,達(dá)到我們想要的效果;今天我們先來(lái)學(xué)習(xí),工作表對(duì)象worksheet的操作過(guò)程。


01 首先讀取或創(chuàng)建 Excel 表格

使用load_workbook()函數(shù);我們需要先導(dǎo)入load_workbook;工作表為活動(dòng)工作表

from openpyxl import load_workbook
# Excel表格與腳本在同一個(gè)文件夾,否則需要把路徑寫(xiě)全
wb = load_workbook(r'demo.xlsx')

如果我們沒(méi)有已存在的 Excel 表格,想要新建一個(gè),那么我們需要使用Workbook類(lèi);Workbook類(lèi)相當(dāng)于一個(gè)模板,我們使用Workbook()實(shí)例化化一個(gè)新的工作表給對(duì)象wb

from openpyxl import Workbook
# 實(shí)例化新的工作表
wb = Workbook()
# 給新工作簿命名為"demo2"
wb.name = "demo2"
print(wb.name)

# 輸出:
# demo2

02 新建工作表并命名

一個(gè)工作簿可以有多個(gè)工作表,我們可以使用create_sheet()函數(shù)來(lái)給我們的工作簿增加新的工作表;使用工作簿的sheetnames屬性來(lái)輸出我們工作簿的所有工作表名稱(chēng);

create_sheet(title = None,index = None);create_sheet()有兩個(gè)參數(shù),第一個(gè)是工作表名稱(chēng),第二個(gè)是新建工作表的索引位置

from openpyxl import Workbook
wb = Workbook()
wb.name = "demo2"

ws1 = wb.create_sheet("Mysheet1"# 新建工作表,放在在最末尾
ws2 = wb.create_sheet("Mysheet2"0# 新建工作表,放在最開(kāi)始
ws3 = wb.create_sheet("Mysheet3"-1# 新建工作表,放在倒數(shù)第2個(gè)位置

ws = wb.sheetnames
wb.save()
print(ws)

# 輸出:
# ['Mysheet2', 'Sheet', 'Mysheet3', 'Mysheet1']

如果要修改工作表名字,則使用對(duì)應(yīng)工作表的title屬性

ws3.title = 'ws300' # 重新命名工作表"Mysheet3"

03 批量新建工作表

即使用for循環(huán),嵌套create_sheet()函數(shù)即可

from openpyxl import Workbook

wb = Workbook()
for i in range(100):
    wb.create_sheet()
ws = wb.sheetnames

wb.save('demo2.xlsx')
print(ws)

04 批量刪除工作表

如果想要?jiǎng)h除工作表,我們就要使用到工作簿的remove_sheet()函數(shù),remove_sheet()需要傳入一個(gè)參數(shù),即工作表對(duì)象,我們使用sheetnames獲取工作表名稱(chēng),然后通過(guò)數(shù)組切片[:-2],即從開(kāi)始到倒數(shù)第 2 個(gè)為止,然后傳入wb[i]生成對(duì)象,再傳入remove_sheet()函數(shù)

from openpyxl import Workbook

wb = Workbook()
for i in range(100):
    wb.create_sheet()
ws = wb.sheetnames

for i in ws[:-2]:
    wb.remove_sheet(wb[i])
ws = wb.sheetnames

wb.save('demo2.xlsx')
print(ws)

今天的教程,主要學(xué)習(xí)了:如何讀取工作簿中的工作表,以及批量新增及刪除工作表,大家都學(xué)會(huì)了嗎?

    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類(lèi)似文章 更多