模块的安装
pip install xlwt
pip install xlrd
xlwt写入模块
xls文件write库,只能写,可以实现指定表单、指定单元格的写入
import xlwt
def savefile(arr):
# 表头信息
title = ['姓名','性别','工作']
# 创建写入数据时所用的Excel表格
workbook = xlwt.Workbook(encoding='utf-8')
# 创建表,第二参数用于确认同一个cell单元是否可以重设值
excel_table = workbook.add_sheet('stu', cell_overwrite_ok=True)
# 遍历添加表头信息
for i,row in enumerate(title):
excel_table.write(0, i, row)
# 遍历获取的数据,并逐行写入excel表中
for r, job in enumerate(arr):
excel_table.write(r + 1, 0, job['name']) # 姓名
excel_table.write(r + 1, 1, job['sex']) # 年龄
excel_table.write(r + 1, 2, job['work']) # 姓别
# 保存Excel文件
workbook.save('data.xls')
# 写入数据
arr= [
[{'name':'小李','sex':'女','work':'student'},{'name':'大徐','sex':'女','work':'student'}]
]
for i in arr:
savefile(i)
实验结果
xlrd 读取模块
xlrd可以实现指定表格、指定单元格的读取。在读取的时候,xlrd可以按行、按列读,也可以一个单元格一个单元格的依次读取。
import xlrd
input_file_name = 'data.xls'
def read_excel(input_file_name):
workbook = xlrd.open_workbook(input_file_name)
# 通过索引顺序获取sheet页
table = workbook.sheet_by_index(0)
# 通过nrows和ncols获取到表格中数据的行数和列数
rows = table.nrows
cols = table.ncols
# 可以通过row.values()按行获取数据,返回一个列表,也可以按列
for row in range(rows):
row_data = table.row_values(row)
print(''.join(row_data))
# 也可以根据单元格获取每一个单元格的数据
# for row in range(rows):
# for col in range(cols):
# data = table.cell(row, col).value
# print(data, end=' ')
read_excel(input_file_name)
结果展示