最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python使用openpyxl打開及讀取excel表格過程

 更新時(shí)間:2024年09月13日 16:08:24   作者:沉觴流年  
openpyxl是一個(gè)Python庫(kù),用于讀寫Excel?2010?xlsx/xlsm文件,它允許你輕松工作與Excel表格,進(jìn)行數(shù)據(jù)處理和分析,支持讀取、創(chuàng)建和修改Excel文件,甚至可以在Excel中插入圖表等,安裝非常簡(jiǎn)單,只需要使用pip命令即可

openpyxl簡(jiǎn)介

openpyxl 最好用的 python 操作 excel 表格庫(kù),但不是官方的標(biāo)準(zhǔn)庫(kù),需要手動(dòng)安裝

可以讀取和寫入excel文件,支持【.xlsx / .xlsm / .xltx / .xltm】格式的文件,可處理excel數(shù)據(jù)、公式、樣式,且可以在表格內(nèi)插入圖表

官方文檔

安裝openpyxl

pip install openpyxl
或
pip3 install openpyxl

打開及讀取表格內(nèi)容

首先,需要了解 Excel 表格中的 行(row)、列(column)、格子(cell) 和 sheet 表

1、打開 Excel 表格并獲取表格名稱

from openpyxl import load_workbook

# 1.打開 Excel 表格并獲取表格名稱

# 打開當(dāng)前py程序路徑下excelDemo文件夾下的qiyuan.xlsx文件
workbook = load_workbook(filename='./excelDemo/qiyuan.xlsx')
print(workbook.sheetnames)
#輸出結(jié)果: ['機(jī)審測(cè)試用例', '分期產(chǎn)品管理端', '分期產(chǎn)品app端']
# 一共三個(gè)表格

2、通過 sheet 名稱獲取表格

from openpyxl import load_workbook

# 1.打開 Excel 表格并獲取表格名稱

# 打開當(dāng)前py程序路徑下excelDemo文件夾下的qiyuan.xlsx文件
workbook = load_workbook(filename='./excelDemo/qiyuan.xlsx')
print(workbook.sheetnames)
#輸出結(jié)果: ['機(jī)審測(cè)試用例', '分期產(chǎn)品管理端', '分期產(chǎn)品app端']
# 一共三個(gè)表格


# 2.通過 sheet 名稱獲取表格
sheet1 = workbook["分期產(chǎn)品app端"]
print(sheet1)
# 輸出結(jié)果: <Worksheet "分期產(chǎn)品app端">

3、獲取表格的尺寸大小(幾行幾列數(shù)據(jù))

from openpyxl import load_workbook

# 1.打開 Excel 表格并獲取表格名稱

# 打開當(dāng)前py程序路徑下excelDemo文件夾下的qiyuan.xlsx文件
workbook = load_workbook(filename='./excelDemo/qiyuan.xlsx')
print(workbook.sheetnames)
#輸出結(jié)果: ['機(jī)審測(cè)試用例', '分期產(chǎn)品管理端', '分期產(chǎn)品app端']
# 一共三個(gè)表格


# 2.通過 sheet 名稱獲取表格
sheet1 = workbook["分期產(chǎn)品app端"]
print(sheet1)
# 輸出結(jié)果: <Worksheet "分期產(chǎn)品app端">


# 3.獲取表格的尺寸大小(幾行幾列數(shù)據(jù))
print(sheet1.dimensions)
# 輸出結(jié)果: A1:S207
# 從 A1:S207         A列到S列 共19列 207行

4、獲取表格內(nèi)某個(gè)格子的數(shù)據(jù)

from openpyxl import load_workbook

# 1.打開 Excel 表格并獲取表格名稱

# 打開當(dāng)前py程序路徑下excelDemo文件夾下的qiyuan.xlsx文件
workbook = load_workbook(filename='./excelDemo/qiyuan.xlsx')
print(workbook.sheetnames)
#輸出結(jié)果: ['機(jī)審測(cè)試用例', '分期產(chǎn)品管理端', '分期產(chǎn)品app端']
# 一共三個(gè)表格


# 2.通過 sheet 名稱獲取表格
sheet1 = workbook["分期產(chǎn)品app端"]
print(sheet1)
# 輸出結(jié)果: <Worksheet "分期產(chǎn)品app端">


# 3.獲取表格內(nèi)某個(gè)格子的數(shù)據(jù)
# 	1)  sheet["A1"]方式   獲取 A1 格子的數(shù)據(jù)
#       cell.value 獲取格子中的值

cell1 = sheet1['G5']
print(cell1.value)
# 輸出結(jié)果:輸出第7列第5行的內(nèi)容:  
# 	1.未登錄/登錄過期情況下Me按鈕進(jìn)入頁(yè)面  2.在Me頁(yè)面中點(diǎn)擊Sign up now



#   2) sheet.cell(row=, column=)方式
cell2 = sheet1.cell(row=4,column=5)
print(cell2.value)
# 輸出結(jié)果:輸出第4行第5列的內(nèi)容:  
#	主頁(yè)點(diǎn)擊Apply Now查看是否能正常跳轉(zhuǎn)到登錄界面

5、獲取某個(gè)格子的行數(shù)、列數(shù)、坐標(biāo)

  • .row 獲取某個(gè)格子的行數(shù);
  • .columns 獲取某個(gè)格子的列數(shù);
  • .corordinate 獲取某個(gè)格子的坐標(biāo)
from openpyxl import load_workbook

# 1.打開 Excel 表格并獲取表格名稱

# 打開當(dāng)前py程序路徑下excelDemo文件夾下的qiyuan.xlsx文件
workbook = load_workbook(filename='./excelDemo/testCase.xlsx')

# 2.獲取表格 只有一張表格的時(shí)候,可以直接 active
sheet2 = workbook.active
print(sheet2)
# 輸出結(jié)果 <Worksheet "Sheet1">

# 3.獲取某個(gè)格子的行數(shù)、列數(shù)、坐標(biāo)
cell2 = sheet2["E3"]
print(cell2.value, cell2.row, cell2.column, cell2.coordinate)
# 輸出結(jié)果: 20歲用戶是否可以通過機(jī)審 3 5 E3

6、獲取一系列格子

6.1 sheet[]方式

from openpyxl import load_workbook

# 1.打開 Excel 表格并獲取表格名稱

# 打開當(dāng)前py程序路徑下excelDemo文件夾下的qiyuan.xlsx文件
workbook = load_workbook(filename='./excelDemo/testCase.xlsx')

# 2.獲取表格 只有一張表格的時(shí)候,可以直接 active
sheet2 = workbook.active
print(sheet2)
# 輸出結(jié)果 <Worksheet "Sheet1">


# 3.獲取一系列格子  sheet[]方式

 # 獲取 A1:C2 區(qū)域的值
cells = sheet2["A1:C2"]
print(cells)
# 輸出結(jié)果:((<Cell 'Sheet1'.A1>, <Cell 'Sheet1'.B1>, <Cell 'Sheet1'.C1>),
# (<Cell 'Sheet1'.A2>, <Cell 'Sheet1'.B2>, <Cell 'Sheet1'.C2>))

# 先行后列
for cell_rows in cells:
	for cell_columns in cell_rows:
		print(cell_columns.value)
# 輸出結(jié)果:
# 功能模塊(依據(jù)導(dǎo)圖一級(jí)分支)
# 功能點(diǎn)(二級(jí)功能點(diǎn)/二級(jí)測(cè)試子任務(wù))
# 優(yōu)先級(jí)(主、高、中、低)
# 機(jī)審規(guī)則
# 年齡檢測(cè)
# 主

特別的,如果我們只想獲取“A 列”,或者獲取“A-C 列”,可以采取如下方式:

sheet["A"] --- 獲取 A 列的數(shù)據(jù)
sheet["A:C"] --- 獲取 A,B,C 三列的數(shù)據(jù)
sheet[5] --- 只獲取第 5 行的數(shù)據(jù)
from openpyxl import load_workbook

# 1.打開 Excel 表格并獲取表格名稱

# 打開當(dāng)前py程序路徑下excelDemo文件夾下的qiyuan.xlsx文件
workbook = load_workbook(filename='./excelDemo/testCase.xlsx')

# 2.獲取表格 只有一張表格的時(shí)候,可以直接 active
sheet2 = workbook.active
print(sheet2)
# 輸出結(jié)果 <Worksheet "Sheet1">


# 3.獲取一系列格子 sheet[]方式

 #  1)獲取 E 列的數(shù)據(jù)
cells1 = sheet2["E"]
# print(cells)

for cell_columns in cells1:
	print(cell_columns.value)
# 輸出結(jié)果:
# 用例概述(根據(jù)功能點(diǎn)進(jìn)行分解)
# 19歲用戶是否可以通過機(jī)審
# 20歲用戶是否可以通過機(jī)審
# 25歲用戶是否可以通過機(jī)審
# 61歲用戶是否可以通過機(jī)審
# 60歲用戶是否可以通過機(jī)審
# 在菲律賓境外提交申請(qǐng)
# 在菲律賓境內(nèi)提交申請(qǐng)

#   2)獲取 A,B,C 三列的數(shù)據(jù)
cells2 = sheet2["A:C"]
# print(cells)

# 先行后列
for cell_rows in cells2:
	for cell_columns in cell_rows:
		print(cell_columns.value)


#   3) 只獲取第 5 行的數(shù)據(jù)
cells3 = sheet2["5"]
for cell_columns in cells3:
	print(cell_columns.value)

6.2 .iter_rows()與.iter_cols()方式

.iter_rows()是按行讀取,.iter_cols()是按列讀取。

from openpyxl import load_workbook

# 1.打開 Excel 表格并獲取表格名稱

# 打開當(dāng)前py程序路徑下excelDemo文件夾下的qiyuan.xlsx文件
workbook = load_workbook(filename='./excelDemo/testCase.xlsx')

# 2.獲取表格 只有一張表格的時(shí)候,可以直接 active
sheet3 = workbook.active
print(sheet3)
# 輸出結(jié)果 <Worksheet "Sheet1">


# 3.獲取一系列格子  .iter_rows()與.iter_cols()方式

# 按行獲取值
# 讀取1-2行中1-4列的數(shù)據(jù)(先行后列)
# for i in sheet3.iter_rows(min_row=1, max_row=2, min_col=1,max_col=4):
# 	for j in i:
# 		print(j.value)
		
# 輸出結(jié)果:
# 功能模塊(依據(jù)導(dǎo)圖一級(jí)分支)
# 功能點(diǎn)(二級(jí)功能點(diǎn)/二級(jí)測(cè)試子任務(wù))
# 優(yōu)先級(jí)(主、高、中、低)
# 用例編號(hào)(M-00001---管理端,A-00001---APP)
# 機(jī)審規(guī)則
# 年齡檢測(cè)
# 主
# A-00001

#  按列獲取值
# 讀取1-2行中1-4列的數(shù)據(jù)(先列后行)
for i in sheet3.iter_cols(min_row=1, max_row=2, min_col=1,max_col=4):
	for j in i:
		print(j.value)
		
# 輸出結(jié)果:
# 功能模塊(依據(jù)導(dǎo)圖一級(jí)分支)
# 機(jī)審規(guī)則
# 功能點(diǎn)(二級(jí)功能點(diǎn)/二級(jí)測(cè)試子任務(wù))
# 年齡檢測(cè)
# 優(yōu)先級(jí)(主、高、中、低)
# 主
# 用例編號(hào)(M-00001---管理端,A-00001---APP)
# A-00001

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • python空值判斷方式(if xxx和if xxx is None的區(qū)別及說明)

    python空值判斷方式(if xxx和if xxx is None的區(qū)別及說明

    這篇文章主要介紹了python空值判斷方式(if xxx和if xxx is None的區(qū)別及說明),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • Python求出0~100以內(nèi)的所有素?cái)?shù)

    Python求出0~100以內(nèi)的所有素?cái)?shù)

    質(zhì)數(shù)又稱素?cái)?shù)。一個(gè)大于1的自然數(shù),除了1和它自身外,不能被其他自然數(shù)整除的數(shù)叫做質(zhì)數(shù);否則稱為合數(shù)。下面小編給大家?guī)砹薖ython求出0~100以內(nèi)的所有素?cái)?shù)實(shí)例代碼,需要的朋友參考下
    2018-01-01
  • Python爬蟲之批量下載喜馬拉雅音頻

    Python爬蟲之批量下載喜馬拉雅音頻

    今天教大家如何利用Python爬蟲批量下載喜馬拉雅音頻,文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)python的小伙伴們很有幫助,需要的朋友可以參考下
    2021-05-05
  • python numpy中對(duì)ndarry按照index增刪改查

    python numpy中對(duì)ndarry按照index增刪改查

    這篇文章主要介紹了python numpy中對(duì)ndarry按照index增刪改查,在numpy中的ndarry是一個(gè)數(shù)組,因此index就是位置下標(biāo),注意下標(biāo)是從0開始,接下來一起進(jìn)入下面文章了解詳細(xì)內(nèi)容吧
    2022-02-02
  • Python實(shí)現(xiàn)添加和自定義設(shè)置Word頁(yè)眉頁(yè)腳

    Python實(shí)現(xiàn)添加和自定義設(shè)置Word頁(yè)眉頁(yè)腳

    頁(yè)眉和頁(yè)腳是 Word 文檔中常用的元素,用于在每一頁(yè)的頂部或底部顯示統(tǒng)一的信息,本文將介紹如何使用 Python 和 Free Spire.Doc 庫(kù)在 Word 文檔中添加和設(shè)置頁(yè)眉頁(yè)腳,包括添加文本、圖片、頁(yè)碼,以及設(shè)置奇偶頁(yè)不同的頁(yè)眉頁(yè)腳等常見操作,有需要的可以了解下
    2026-04-04
  • Python基于scapy實(shí)現(xiàn)修改IP發(fā)送請(qǐng)求的方法示例

    Python基于scapy實(shí)現(xiàn)修改IP發(fā)送請(qǐng)求的方法示例

    這篇文章主要介紹了Python基于scapy實(shí)現(xiàn)修改IP發(fā)送請(qǐng)求的方法,涉及Python網(wǎng)絡(luò)編程中使用scapy操作IP的相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2017-07-07
  • Python要求O(n)復(fù)雜度求無(wú)序列表中第K的大元素實(shí)例

    Python要求O(n)復(fù)雜度求無(wú)序列表中第K的大元素實(shí)例

    這篇文章主要介紹了Python要求O(n)復(fù)雜度求無(wú)序列表中第K的大元素實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • pycharm的console輸入實(shí)現(xiàn)換行的方法

    pycharm的console輸入實(shí)現(xiàn)換行的方法

    今天小編就為大家分享一篇pycharm的console輸入實(shí)現(xiàn)換行的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • Python列表推導(dǎo)式的使用方法

    Python列表推導(dǎo)式的使用方法

    這篇文章主要介紹了Python列表推導(dǎo)式的使用方法,大家參考使用吧
    2013-11-11
  • Python正則捕獲操作示例

    Python正則捕獲操作示例

    這篇文章主要介紹了Python正則捕獲操作,結(jié)合具體實(shí)例形式分析了Python基于正則表達(dá)式的分組、捕獲、替換等相關(guān)操作技巧,需要的朋友可以參考下
    2017-08-08

最新評(píng)論

前郭尔| 贵定县| 奈曼旗| 尼玛县| 克什克腾旗| 永济市| 涞水县| 平罗县| 古丈县| 读书| 工布江达县| 新蔡县| 鄂温| 岢岚县| 广宁县| 崇文区| 繁峙县| 陈巴尔虎旗| 阳城县| 颍上县| 青海省| 乌拉特前旗| 武陟县| 定结县| 博湖县| 永昌县| 呼玛县| 泰安市| 滁州市| 南皮县| 石楼县| 托克逊县| 聂拉木县| 柯坪县| 肥城市| 密山市| 彝良县| 克山县| 罗甸县| 乐都县| 大化|