1.用openpyxl模块打开excel文档
import openpyxl #创建一个workbook对象 wb=openpyxl.load_workbook('a.xlsx') #打印wb类型 workbook print(type(wb))
openpyxl.load_workbook()函数接受文件名,返回一个workbook 数据类型的值。这
个workbook 对象代表这个Excel 文件,有点类似File 对象代表一个打开的文本文件,对应的excel文件必须在当前目录下
2.从工作簿中取得工作表
调用方法sheetnames可以取得工作簿中所有表名的列表,在新版本python中不推荐使用get_sheet_names()
#获取每个表单名字(列表) sheet=wb.sheetnames sh1=wb[sheet[0]] #第一个表Sheet1 sh2=wb[sheet[1]] #第二个表
3.从表中获取单元格
有了Worksheet 对象后,就可以按名字访问Cell 对象。
#用cell可以访问单元格任意位置(row,column) for i in range(2,7): print(sh1.cell(i,2).value)
Cell 对象有一个value 属性,不出意外,它包含这个单元格中保存的值。
4.从表中获取行和列
print(sh1.max_column) #最大列 print(sh1.max_row) #最大行
可以将Worksheet 对象切片,取得电子表格中一行、一列或一个矩形区域中的所有Cell 对象。然后可以循环遍历这个切片中的所有单元格
for obj in list(sh1.rows): #遍历每行,得到每行的元组类型 print(obj[1].value) #打印第二列数据 for obj in list(sh1.rows): #遍历每行 for i in list(obj): #遍历行中每个元素 print(i.value) #打印所有数据
注意:利用Worksheet 对象的rows 属性,可以得到一个元组构成的元组。内部的每个元
组都代表1 行,包含该行中的Cell 对象。columns 属性也会给你一个元组构成的元组,
内部的每个元组都包含1 列中的Cell 对象
总结:
1.导入openpyxl 模块。
2.调用openpyxl.load_workbook()函数。
3.取得Workbook 对象。
4.调用get_active_sheet()或get_sheet_by_name()工作簿方法。
5.取得Worksheet 对象。
6.使用索引或工作表的cell()方法,带上row 和column 关键字参数。
7.取得Cell 对象。
8.读取Cell 对象的value 属性。