只要是和数据打交道的人,就避免不了接触 Excel。对于大量的重复性工作,靠人工往往会耗费大量的时间。借助 Python 编程,可以批量自动化完成这些操作,起到事半功倍的效果。Pandas 模块,它能够方便快捷地处理 Excel 数据,但是对于 Excel 格式的设置,借助 openpyxl 模块是一个很好的选择。读取 Excel 单个单元格的信息
“单元格”是 Excel 中存储信息的最小单元,本小节就为大家讲述如何获取单元格中的值,以及单元格的坐标信息(行坐标、列坐标、坐标)。对于如图所示的工作簿,我们如何获取第一个单元格的值?对于存储“姓名”的单元格,它的坐标又是多少?1. 获取单元格的值
在 openpyxl 模块中,有两种方法可用来帮助我们获取指定单元格对象。- wb["位置坐标"]:传入单元格的位置坐标(例 A1),定位指定单元格。
- wb.cell(row=行数, column=列数):传入单元格的行数、列数,定位指定单元格。
其实使用上述方法,得到的只是一个单元格对象,并不能直接获取单元格中的值。此时调用单元格对象的 value 属性,才可以获取其中的具体值。from openpyxl import load_workbookwb = load_workbook("琼东西.xlsx")ws = wb.activecell = ws.cell(row=1, column=1)cell # <Cell '广东'.A1>cell.value # '姓名'
在获取工作表对象 ws 后,调用 cell() 方法并传入行数和列数(见 1),我们就返回了该单元格对象。接着,调用 values 属性,可以直接获取单元格中的具体值(见 2)。小思考
如何利用 wb["位置坐标"] 这种方式获取单元格对象呢?
2. 获取单元格的坐标信息
单元格的坐标信息,指的是单元格的行坐标、列坐标和坐标,它们的用法如下。
- cell.coordinate:用于获取单元格的坐标。
cell.row # 1cell.column # 1cell.coordinate # 'A1'
在获取单元格对象 cell 后,分别调用 row、column 和 coordinate 属性(见 1 ~ 3),可以帮助我们获取这个单元格的行坐标、列坐标和坐标。