一、读取excel表格的数据——xlrd
1.1 安装
可使用pycharm搜索xlrd安装,也可在virtualenv中执行以下操作: pip install xlrd
1.2 使用方法
import xlrd
#读取目标excel表
xlsx = xlrd.open_workbook('d:/7月下旬入库表.xlsx')
#读取excel表中第一个工作簿
table = xlsx.sheet_by_index(0)
#读取第一行,第一列的数据
print(table.cell_value(0, 0))
# 获取所有sheet名字:xlsx.sheet_names()
# 获取sheet数量:xlsx.nsheets
二、将数据写入excel表——xlwt
2.1 安装
可使用pycharm搜索xlwt安装,也可在virtualenv中执行以下操作: pip install xlwt
2.2 使用方法
import xlwt
#创建一个excel表对象
new_workbook = xlwt.Workbook()
#在excel表中创建一个新的工作簿
worksheet = new_workbook.add_sheet('new_test')
#在工作簿中的第一行第一列写入内容
worksheet.write(0, 0, 'test')
#将excel表保存到本地
new_workbook.save('d:/test.xls')
三、实战案例一
3.1 需求:逐行读取旧表的内容,将其写入到新表中
3.2 代码实现:
import xlrd,xlsxwriter
#读取旧表
xlsx = xlrd.open_workbook('d:/7月下旬入库表.xlsx')
#创建新表
new_workbook = xlsxwriter.Workbook('d:/test.xlsx')
#创建新工作簿
worksheet = new_workbook.add_worksheet()
#读取旧表的第一个工作簿
table = xlsx.sheet_by_index(0)
#遍历,将读取到的数据写入到新表
for i in range(0,table.nrows):
for j in range(0,table.ncols):
worksheet.write(i, j, table.cell_value(i, j))
new_workbook.close()
四、工具类xlutils和写入数据的样式
4.1 复制模板
from xlutils.copy import copy
tem_excel = xlrd.open_workbook('D:/日统计.xls', formatting_info=True)
tem_sheet = tem_excel.sheet_by_index(0)
#将旧表的样式复制到新表中
new_excel = copy(tem_excel)
new_sheet = new_excel.get_sheet(0)
4.2 设置写入数据的样式
style = xlwt.XFStyle()
#设置字体
font = xlwt.Font()
font.name = '微软雅黑'
font.bold = True
font.height = 360
style.font = font
#设置边框为细边框
borders = xlwt.Borders()
borders.top = xlwt.Borders.THIN
borders.bottom = xlwt.Borders.THIN
borders.left = xlwt.Borders.THIN
borders.right = xlwt.Borders.THIN
style.borders = borders
#设置对齐格式为居中对齐
alignment = xlwt.Alignment()
alignment.horz = xlwt.Alignment.HORZ_CENTER
alignment.vert = xlwt.Alignment.VERT_CENTER
style.alignment = alignment
#以指定的格式写入数据
new_sheet.write(2, 1, 12, style)
new_sheet.write(3, 1, 18, style)
new_sheet.write(4, 1, 19, style)
new_sheet.write(5, 1, 15, style)
#保存
new_excel.save('D:/填写.xls')
网友评论