Python實(shí)現(xiàn)對(duì)Excel表格的操作詳解
導(dǎo)包
要想使用 python 操作 Excel 文件,應(yīng)當(dāng)導(dǎo)入 openpyxl包。在命令行中輸入以下字段:
pip install openpyxl
導(dǎo)入包:
import openpyxl
讀取EXCEL文件
這里會(huì)使用openpyxl.load_workbook() 方法打開(kāi)Excel文件,請(qǐng)看示例代碼:
import openpyxl file = 'test.xlsx' ex = openpyxl.load_workbook(file) #打開(kāi)test.xlsx文件
獲取worksheet名稱
worksheet,即下方的工作表,打開(kāi)Excel表格后,下方左下角的 “+”號(hào)可以建立新的worksheet。

在python中,我們使用 get_sheet_names()方法獲取全部的工作表名稱,通過(guò)get_active_sheet()方法獲取當(dāng)前工作表的名稱。
import openpyxl
file = 'test.xlsx'
ex = openpyxl.load_workbook(file) #打開(kāi)test.xlsx文件
allSheets = ex.get_sheet_names()
print("所有工作表=",allSheets)
local_Sheet = ex.get_active_sheet()
print('當(dāng)前工作表名稱:',local_Sheet)使用上述代碼會(huì)發(fā)生警告的話,可以使用下面的代碼達(dá)到更好的效果:
- ex.sheetnames
- ex.active.title
import openpyxl
file = 'test.xlsx'
ex = openpyxl.load_workbook(file) #打開(kāi)test.xlsx文件
allSheets = ex.sheetnames
print("所有工作表=",allSheets)
local_Sheet = ex.active.title
print('當(dāng)前工作表名稱:',local_Sheet)
設(shè)定當(dāng)前工作表
import openpyxl
file = 'test.xlsx'
ex = openpyxl.load_workbook(file) #打開(kāi)test.xlsx文件
allSheets = ex.sheetnames
print("所有工作表=",allSheets)
ws = ex.get_sheet_by_name('Sheet3')
print("當(dāng)前工作表=",ws.title)
也可以這么寫(xiě),也能達(dá)到一樣的效果:
import openpyxl
file = 'test.xlsx'
ex = openpyxl.load_workbook(file) #打開(kāi)test.xlsx文件
allSheets = ex.sheetnames
print("所有工作表=",allSheets)
wb = ex.worksheets[2]
print("當(dāng)前工作表=",wb.title)輸出目標(biāo)單元格數(shù)據(jù)

本篇文章中使用的表格內(nèi)容
- 行和列:Excel工作表由行和列組成,行和列交叉形成單元格。每個(gè)單元格可以存儲(chǔ)一個(gè)數(shù)據(jù)值、公式或函數(shù)等。
- 單元格:是Excel工作表中的最小單位,用于存儲(chǔ)單一的數(shù)據(jù)值。單元格的地址由列號(hào)和行號(hào)確定,例如A1表示第1列第1行的單元格。
import openpyxl
file = 'test.xlsx'
ex = openpyxl.load_workbook(file) #打開(kāi)test.xlsx文件
ex.active = ex.worksheets[0]
print("當(dāng)前工作表=",ex.active.title)
wb = ex.active
print("單元格A1=",wb['A1'].value)
print("單元格A2=",wb['A2'].value)
print("單元格B2=",wb['B1'].value)
print("單元格B3=",wb['B3'].value)
print("單元格C5=",wb['C10'].value)
工作表.rows(行)
.rows是openpyxl庫(kù)中的一個(gè)屬性,用于遍歷 Excel 工作表中的所有行。在openpyxl中,每個(gè)工作表對(duì)象都有一個(gè)rows屬性,它返回一個(gè)生成器,用于產(chǎn)生工作表中的所有行。
import openpyxl
file = 'test.xlsx'
ex = openpyxl.load_workbook(file) #打開(kāi)test.xlsx文件
wb = ex.worksheets[0]
print("當(dāng)前工作表=",wb.title)
for row in wb.rows:
for cell in row:
print(cell.value, end=' ')
print()
工作表.columns(列)
.columns是openpyxl庫(kù)中的一個(gè)屬性,用于遍歷 Excel 工作表中的所有列。在openpyxl中,每個(gè)工作表對(duì)象都有一個(gè)columns屬性,它返回一個(gè)生成器,用于產(chǎn)生工作表中的所有列。
import openpyxl
file = 'test.xlsx'
ex = openpyxl.load_workbook(file) #打開(kāi)test.xlsx文件
wb = ex.worksheets[0]
print("當(dāng)前工作表=",wb.title)
for column in wb.columns:
for cell in column:
print(cell.value, end=' ')
print()
小結(jié)
本篇文章中介紹了如何使用python語(yǔ)言操作Excel表格。
主要內(nèi)容包括,導(dǎo)包, 讀取EXCEL文件:
1、獲取worksheet名稱
2、設(shè)定當(dāng)前工作表
3、輸出目標(biāo)單元格數(shù)據(jù)
4、工作表.rows(行)
5、工作表.columns(列)
到此這篇關(guān)于Python實(shí)現(xiàn)對(duì)Excel表格的操作詳解的文章就介紹到這了,更多相關(guān)Python Excel操作內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
pandas數(shù)據(jù)清洗,排序,索引設(shè)置,數(shù)據(jù)選取方法
下面小編就為大家分享一篇pandas數(shù)據(jù)清洗,排序,索引設(shè)置,數(shù)據(jù)選取方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-05-05
Python趣味挑戰(zhàn)之pygame實(shí)現(xiàn)無(wú)敵好看的百葉窗動(dòng)態(tài)效果
最近寫(xiě)了很多期關(guān)于pygame的案例和知識(shí)點(diǎn),自己也收獲了很多知識(shí),也在這個(gè)過(guò)程中成長(zhǎng)了不少, 這次還是圍繞surface對(duì)象進(jìn)行詳細(xì)介紹,并形成完整的案例過(guò)程,文中有非常詳細(xì)實(shí)現(xiàn)百葉窗動(dòng)態(tài)效果的代碼示例,需要的朋友可以參考下2021-05-05
Flask框架踩坑之a(chǎn)jax跨域請(qǐng)求實(shí)現(xiàn)
這篇文章主要介紹了Flask框架踩坑之a(chǎn)jax跨域請(qǐng)求實(shí)現(xiàn),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-02-02
Python創(chuàng)建高強(qiáng)度密碼生成工具方法實(shí)例
這篇文章主要為大家介紹了Python創(chuàng)建高強(qiáng)度密碼生成工具方法實(shí)例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-12-12
Python實(shí)現(xiàn)查找字符串?dāng)?shù)組最長(zhǎng)公共前綴示例
這篇文章主要介紹了Python實(shí)現(xiàn)查找字符串?dāng)?shù)組最長(zhǎng)公共前綴,涉及Python針對(duì)字符串的遍歷、判斷、計(jì)算等相關(guān)操作技巧,需要的朋友可以參考下2019-03-03
python使用pgzero進(jìn)行游戲開(kāi)發(fā)
今天要和大家分享的pgzero(pygame zero)是在pygame基礎(chǔ)上做了進(jìn)一步的封裝,使得設(shè)計(jì)一款游戲十分的方便,特別適合少兒編程領(lǐng)域的教學(xué), 與scratch相得益彰。2021-06-06
關(guān)于numpy中eye和identity的區(qū)別詳解
今天小編就為大家分享一篇關(guān)于numpy中eye和identity的區(qū)別詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-11-11

