相关文章推荐
焦虑的双杠  ·  Diagnosing BEA-101020 ...·  8 月前    · 
焦虑的双杠  ·  OpenAI Code ...·  8 月前    · 
焦虑的双杠  ·  c# - Await async ...·  9 月前    · 
焦虑的双杠  ·  Shader Storage ...·  9 月前    · 
焦虑的双杠  ·  4. TensorRT 的 Python ...·  10 月前    · 
俊秀的手套  ·  Qt | 显示网络图片 ...·  1小时前    · 
失恋的青椒  ·  20.5 OpenSSL ...·  1小时前    · 
爱旅游的帽子  ·  20.1 OpenSSL ...·  1小时前    · 
爱健身的跑步鞋  ·  机电产品进口管理办法·  2 小时前    · 
飘逸的马克杯  ·  【GIT SourceTree】_<git ...·  2 小时前    · 

excel数据处理一:巧妙使用openpyxl提取、筛选数据

目前openpyxl只支持[.xlsx / .xlsm / .xltx / .xltm]格式的文件,有人说,openpyxl是最好用的excel数据处理插件,这个excel的数据处理插件确实相当可以。主要是它的操作简单、并且处理数据的方式更容易理解。

【阅读全文】

openpyxl 官网地址

https://openpyxl.readthedocs.io/en/stable/

在openpyxl的excel数据处理中,一个单元格对象使用cell表示,每一行数据称之为row,每一列数据称之为column。excel文件中的工作空间称之为sheet,下面使用我准备好的一张图片来说明一下。

from openpyxl import load_workbook  # 导入excel的处理对象
workbook = load_workbook(filename = "./data.xlsx")  # 加载excel文件
print(workbook.sheetnames)  # 获取当前excel表格中的所有的表空间
# 获取一个表工作空间对象
sheet = workbook["Sheet2"]
# 获取表空间对象的数据有几行几列
print(sheet.dimensions)
# 获取某个单元格的数据
cell_1 = sheet["A1"]
print('A1单元格的数据是:',cell_1.value)

通过定位到第几行第几列的方式获取某个单元格的数据。

cell_2 = sheet.cell(row = 2,column = 2)

获取某个区域的单元然后遍历

# 提取区域中的所有单元格对象
cell_3 = sheet["A1:C5"]
print('A1:C5 的数据对象是',cell_3)
for row in cell_3: # 遍历每一行的单元格
    for column in row: # 遍历每一列的单元格
        print(column.value) # 提取当前单元格的数据

行、列数据读取方式

按行读取数据 iter_rows(min_row=1, max_row=10, min_col=1, max_col=5) min_row: 设置最小行数 max_row: 设置最大行数 min_col: 设置最小列数 max_col: 设置最大列数 for row in sheet.iter_rows(min_row=1, max_row=10, min_col=1, max_col=5): for column in row: print(column.value) 按列读取数据 iter_cols(min_row=1, max_row=10, min_col=1, max_col=5) min_row: 设置最小行数 max_row: 设置最大行数 min_col: 设置最小列数 max_col: 设置最大列数 for column in sheet.iter_cols(min_row=1, max_row=10, min_col=1, max_col=5): for row in column: print(row.value) 读取所有行数据 sheet.rows for row in sheet.rows: print(row) # 打印每一行的数据

【往期精彩】

● 比Selenium更方便的自动化测试工具Helium!

● Python数据可视化:可视化数据分析插件D-Tale

● 计算速度太慢?试试 lru_cache 装饰器!

 
推荐文章