openpyxl读Excel
openpyxl 这个第三方库只能操作后缀 .xlse的Excel文件
Excel相关的基本概念
工作簿:一个Excel文件就是一个工作簿
工作簿(workbook): 数据是单位格为单元保存到工作表中,一个工作簿中可以一个或者多个工作表(至少一个)
import openpyxl
1.打开Excel文件
1)openpyxl. open(excel 文件路径)
2)openpyxl. lond_work(excel文件路径)
wb = openpyxl. open(‘file/data.xlsx’)
2.获取工作簿中所有工作表的表名
工作簿对象.sheetnames
names = wb.sheetnames
print(names)
3.获取工作表
1)工作簿对象.active --获取当前Excel文件中的活跃表(被选中的那张表)
2)工作簿对象[表名] —获取指定表名对应的工作表
sheet1 = wb.active
sheet2 = wb[‘原始数据’]
4.获取最大行数和列数(有数据的行数和列表)
工作表.max_row -获取指定工作表的最大行数
工作表.max_colum --获取指定工作表最大列数
m_r = sheet2.max_row
m_c = sheet2.max_colum
print(m_r, m_c)
5.获取单元格
工作表.cell(行号,列号)
cell1 = sheet2.cell(2, 1)
cell2 = sheet2.cell(19,3)
6.获取单元格中内容
单元格.value
print(cell1.value, cell2.value)
灵活获取Excel文件中的数据
import openpyxl
wb = openpyxl.load_workbook('files/data.xlsx')
sheet = wb['原始数据']
# 1. 获取指定行所有的数据
row = 3
for col in range(1, sheet.max_column+1):
cell = sheet.cell(row, col)
print(cell.value)
# 2.获取第二列所有的数据
col = 2
for row in range(1, sheet.max_row+1):
cell = sheet.cell(row, col)
print(cell.value)
# 3.获取每个学生的所有成绩
for row in range(1, sheet.max_row+1):
for col in range(1, sheet.max_column+1):
cell = sheet.cell(row, col)
print(cell.value)
print('---------------')
# 4.获取每一个学生的所有成绩,保存到列表中,列表中的元素是字典
# [{'姓名': '李楠', '英语': 70, '办公软件操作': 96, '电子商务': 73, '计算机基础':79}, ]
all_students = []
for row in range(2