安装模块
Python读取Excel的模块有很多可以到官网查看:官网
#安装模块 openpyxl
pip install openpyxl
注意: 无需在文件系统上创建文件即可开始使用openpypl。只导入 Workbook 上课开始工作。
表格基本操作
# 表格操作
from openpyxl import Workbook
#工作簿:通过它来创建所有的结构
wb = Workbook()
#现在激活默认的工作报表Sheet
ws = wb.active
#注意: 默认设置为0。除非修改其值,否则使用此方法将始终获取第一个工作表。
#可以使用创建新工作表 Workbook.create_sheet() 方法
ws2 = wb.create_sheet('login',0)
#修改工作报表的名字
ws.title = 'for'
ws['A1'] = 44
ws['B1'] = 18
#在公作报表的尾部进行追加数据
ws.append([1,2,3])
#访问单元格,并且赋值
ws2['A1'] = 19
import datetime
ws['A2'] = datetime.datetime.now()
#添加数据
ws.cell(5,4,100)
#主要用作修改数据
ws.cell(5,6).value = 10
wb.save("sample.xlsx")
# Worksheet.cell() 方法,提供了对使用行和列表示法的单元格的访问
d = ws.cell(row=5,column=3,value=20)
#注意 在内存中创建工作表时,它不包含 cells . 它们是在首次访问时创建的。
# for x in range(1,101):
# for y in range(1,101):
# ws.cell(row=x, column=y)
wb.save('test.xlsx')
读取多条数据到表中
from openpyxl import Workbook
wb = Workbook()
wb.create_sheet('login',0)
#转换工作报表,ws代表login的工作报表
ws = wb['login']
#Data 中的第一个数据的下标是什么 0
data = [
{'name':'Excels','age':18,'addr':'biejing'},
{'name':'python','age':18,'addr':'biejing'},
{'name':'Django','age':18,'addr':'biejing'},
{'name':'Django','age':18,'addr':'biejing'},
{'name':'Django','age':18,'addr':'biejing'},
{'name':'Django','age':18,'addr':'biejing'},
]
#第一行是名字
ws.append(['name','age','addr'])
#开始的时候必须第二行
for i in range(2,len(data)+2):
ws.cell(i,1).value = data[i-2]['name']
ws.cell(i, 2).value = data[i - 2]['age']
ws.cell(i, 3).value = data[i - 2]['addr']
wb.save('test.xlsx')
读取已经存在的Excel文件
通过该方法导入就行:from openpyxl import load_workbook
'''
读取测试用例(重点)
'''
from openpyxl import load_workbook
#获取文件工作薄
wb1 = load_workbook('test.xlsx')
# wb2 = load_workbook('test2.xlsx')
#切换到具体的工作报表
sheet1 = wb1['login']
# sheet2 = wb2['login2']
resut = []
#根据规律获取到每条数据
for i in range(2,sheet1.max_row+1):
row_data = {}
row_data['name'] = sheet1.cell(i,1).value
row_data['age'] = sheet1.cell(i, 2).value
row_data['addr'] = sheet1.cell(i, 3).value
resut.append(row_data)
#打印到屏幕
print(resut)