python 使用 openpyxl 打开及读取 excel 表格 您所在的位置:网站首页 openpyxl图表丢失 python 使用 openpyxl 打开及读取 excel 表格

python 使用 openpyxl 打开及读取 excel 表格

2023-08-11 07:17| 来源: 网络整理| 查看: 265

python 使用 openpyxl 打开及读取 excel 表格 openpyxl简介安装openpyxl打开及读取表格内容1、打开 Excel 表格并获取表格名称2、通过 sheet 名称获取表格3、获取表格的尺寸大小(几行几列数据)4、获取表格内某个格子的数据5、获取某个格子的行数、列数、坐标6、获取一系列格子6.1 sheet[]方式6.2 .iter_rows()与.iter_cols()方式

openpyxl简介 openpyxl 最好用的 python 操作 excel 表格库,但不是官方的标准库,需要手动安装可以读取和写入excel文件,支持【.xlsx / .xlsm / .xltx / .xltm】格式的文件,可处理excel数据、公式、样式,且可以在表格内插入图表

官方文档

安装openpyxl pip install openpyxl 或 pip3 install openpyxl 打开及读取表格内容

首先,需要了解 Excel 表格中的 行(row)、列(column)、格子(cell) 和 sheet 表 在这里插入图片描述

1、打开 Excel 表格并获取表格名称

在这里插入图片描述

from openpyxl import load_workbook # 1.打开 Excel 表格并获取表格名称 # 打开当前py程序路径下excelDemo文件夹下的qiyuan.xlsx文件 workbook = load_workbook(filename='./excelDemo/qiyuan.xlsx') print(workbook.sheetnames) #输出结果: ['机审测试用例', '分期产品管理端', '分期产品app端'] # 一共三个表格 2、通过 sheet 名称获取表格 from openpyxl import load_workbook # 1.打开 Excel 表格并获取表格名称 # 打开当前py程序路径下excelDemo文件夹下的qiyuan.xlsx文件 workbook = load_workbook(filename='./excelDemo/qiyuan.xlsx') print(workbook.sheetnames) #输出结果: ['机审测试用例', '分期产品管理端', '分期产品app端'] # 一共三个表格 # 2.通过 sheet 名称获取表格 sheet1 = workbook["分期产品app端"] print(sheet1) # 输出结果: 3、获取表格的尺寸大小(几行几列数据) from openpyxl import load_workbook # 1.打开 Excel 表格并获取表格名称 # 打开当前py程序路径下excelDemo文件夹下的qiyuan.xlsx文件 workbook = load_workbook(filename='./excelDemo/qiyuan.xlsx') print(workbook.sheetnames) #输出结果: ['机审测试用例', '分期产品管理端', '分期产品app端'] # 一共三个表格 # 2.通过 sheet 名称获取表格 sheet1 = workbook["分期产品app端"] print(sheet1) # 输出结果: # 3.获取表格的尺寸大小(几行几列数据) print(sheet1.dimensions) # 输出结果: A1:S207 # 从 A1:S207 A列到S列 共19列 207行 4、获取表格内某个格子的数据 from openpyxl import load_workbook # 1.打开 Excel 表格并获取表格名称 # 打开当前py程序路径下excelDemo文件夹下的qiyuan.xlsx文件 workbook = load_workbook(filename='./excelDemo/qiyuan.xlsx') print(workbook.sheetnames) #输出结果: ['机审测试用例', '分期产品管理端', '分期产品app端'] # 一共三个表格 # 2.通过 sheet 名称获取表格 sheet1 = workbook["分期产品app端"] print(sheet1) # 输出结果: # 3.获取表格内某个格子的数据 # 1) sheet["A1"]方式 获取 A1 格子的数据 # cell.value 获取格子中的值 cell1 = sheet1['G5'] print(cell1.value) # 输出结果:输出第7列第5行的内容: # 1.未登录/登录过期情况下Me按钮进入页面 2.在Me页面中点击Sign up now # 2) sheet.cell(row=, column=)方式 cell2 = sheet1.cell(row=4,column=5) print(cell2.value) # 输出结果:输出第4行第5列的内容: # 主页点击Apply Now查看是否能正常跳转到登录界面 5、获取某个格子的行数、列数、坐标

在这里插入图片描述

.row 获取某个格子的行数; .columns 获取某个格子的列数; .corordinate 获取某个格子的坐标 from openpyxl import load_workbook # 1.打开 Excel 表格并获取表格名称 # 打开当前py程序路径下excelDemo文件夹下的qiyuan.xlsx文件 workbook = load_workbook(filename='./excelDemo/testCase.xlsx') # 2.获取表格 只有一张表格的时候,可以直接 active sheet2 = workbook.active print(sheet2) # 输出结果 # 3.获取某个格子的行数、列数、坐标 cell2 = sheet2["E3"] print(cell2.value, cell2.row, cell2.column, cell2.coordinate) # 输出结果: 20岁用户是否可以通过机审 3 5 E3 6、获取一系列格子 6.1 sheet[]方式 from openpyxl import load_workbook # 1.打开 Excel 表格并获取表格名称 # 打开当前py程序路径下excelDemo文件夹下的qiyuan.xlsx文件 workbook = load_workbook(filename='./excelDemo/testCase.xlsx') # 2.获取表格 只有一张表格的时候,可以直接 active sheet2 = workbook.active print(sheet2) # 输出结果 # 3.获取一系列格子 sheet[]方式 # 获取 A1:C2 区域的值 cells = sheet2["A1:C2"] print(cells) # 输出结果:((, , ), # (, , )) # 先行后列 for cell_rows in cells: for cell_columns in cell_rows: print(cell_columns.value) # 输出结果: # 功能模块(依据导图一级分支) # 功能点(二级功能点/二级测试子任务) # 优先级(主、高、中、低) # 机审规则 # 年龄检测 # 主

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

sheet["A"] --- 获取 A 列的数据 sheet["A:C"] --- 获取 A,B,C 三列的数据 sheet[5] --- 只获取第 5 行的数据 from openpyxl import load_workbook # 1.打开 Excel 表格并获取表格名称 # 打开当前py程序路径下excelDemo文件夹下的qiyuan.xlsx文件 workbook = load_workbook(filename='./excelDemo/testCase.xlsx') # 2.获取表格 只有一张表格的时候,可以直接 active sheet2 = workbook.active print(sheet2) # 输出结果 # 3.获取一系列格子 sheet[]方式 # 1)获取 E 列的数据 cells1 = sheet2["E"] # print(cells) for cell_columns in cells1: print(cell_columns.value) # 输出结果: # 用例概述(根据功能点进行分解) # 19岁用户是否可以通过机审 # 20岁用户是否可以通过机审 # 25岁用户是否可以通过机审 # 61岁用户是否可以通过机审 # 60岁用户是否可以通过机审 # 在菲律宾境外提交申请 # 在菲律宾境内提交申请 # 2)获取 A,B,C 三列的数据 cells2 = sheet2["A:C"] # print(cells) # 先行后列 for cell_rows in cells2: for cell_columns in cell_rows: print(cell_columns.value) # 3) 只获取第 5 行的数据 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 表格并获取表格名称 # 打开当前py程序路径下excelDemo文件夹下的qiyuan.xlsx文件 workbook = load_workbook(filename='./excelDemo/testCase.xlsx') # 2.获取表格 只有一张表格的时候,可以直接 active sheet3 = workbook.active print(sheet3) # 输出结果 # 3.获取一系列格子 .iter_rows()与.iter_cols()方式 # 按行获取值 # 读取1-2行中1-4列的数据(先行后列) # 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) # 输出结果: # 功能模块(依据导图一级分支) # 功能点(二级功能点/二级测试子任务) # 优先级(主、高、中、低) # 用例编号(M-00001---管理端,A-00001---APP) # 机审规则 # 年龄检测 # 主 # A-00001 # 按列获取值 # 读取1-2行中1-4列的数据(先列后行) 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) # 输出结果: # 功能模块(依据导图一级分支) # 机审规则 # 功能点(二级功能点/二级测试子任务) # 年龄检测 # 优先级(主、高、中、低) # 主 # 用例编号(M-00001---管理端,A-00001---APP) # A-00001


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有