Excel 是 Windows 环境下流行的、强大的电子表格应用。openpyxl 模块让 Python 程序能读取和修改 Excel 电子表格文件。例如,可能有一个无聊的任务,须要从一个电子表格拷贝一些数据,粘贴到另外一个电子表格中。或者可能须要从几千行中挑选几行,根据某种条件稍做修改。或者须要查看几百份部门预算电子表格,寻找其中的赤字。正是这种无聊无
脑的电子表格任务,能够经过 Python 来完成。LibreOffice Calc, WPS 和 OpenOffice Calc 都能处理 Excel 的电子表格文件格式,这意味着 openpyxl 模块也能处理来自这些应用程序的电子表格。你能够从 https://www.libreoffice.org/和 http://www.openoffice.org/下载这些软件。即便你的计算机上已经安装了 Excel,可能也会发现这些程序更容易使用。函数
Python 没有自带 openpyxl,因此必须安装。spa
pip3 install openpyxl
将使用一个电子表格 example.xlsx,你能够本身建立这个电子文档,内容以下:excel
# 导入工做薄 1. wb = openpyxl.load_workbook('excelDemo/example.xlsx') # 加载工做薄 2. wb.sheetnames # 获取当前全部工做表的名称, 返回一个列表 3. wb.active # 获取当前活跃的工做表
4. sheet = wb['Sheet1'] # 工做表 5. sheet.title # 获取当前活动表的名称 6. sheet.cell(row=1, column=2) # 获取单元格指定行和指定列的内容
Cell 对象有一个 value 属性,不出意外,它包含这个单元格中保存的值。Cell 对象也有 row、column 和 coordinate 属性,提供该单元格的位置信息。code
row属性给出的是整数 1,column 属性给出的是'B',coordinate 属性给出的是'B1'。对象
6. cell = sheet['A1'] 7. cell_value = sheet['A1'].value 8. cell.row, cell.column cell.coordinate
下面是从电子表格文件中读取单元格涉及的全部函数、方法和数据类型。一个完整的操做过程以下:blog
一个完整的案例代码以下:索引
import openpyxl # 1. 读取excel文档 wb = openpyxl.load_workbook('excelDemo/example.xlsx') # # 返回一个workbook对象, 有点相似于文件对象; # print(wb, type(wb)) # 2. 在工做薄中取得工做表 # print(wb.get_sheet_names()) # 返回一个列表, 存储excel表中全部的sheet工做表; print(wb.sheetnames) # 返回一个worksheet对象, 返回当前的活动表; # print(wb.get_active_sheet()) # print(wb.active) # 3. 获取工做表中, 单元格的信息 # wb.get_sheet_by_name('Sheet1') sheet = wb['example'] print(sheet['A1']) print(sheet['B1'].value) cell = sheet['B1'] print(cell.row, cell.column) print(sheet.cell(row=3, column=2)) print(sheet.cell(row=3, column=2).value) print(sheet.cell(row=3, column=2, value='www')) # sheet的属性 print(sheet.max_column) print(sheet.max_row) print(sheet.title) sheet.title = 'example' print(sheet.title) for row in sheet.rows: for cell in row: print(cell.value, end='\t') print('\n') wb.save(filename="excelDemo/example.xlsx")