openpyxl库
from openpyxl import load_workbook
行:row
列:column
格子:cell
表:sheet
对表格读数据
import xlrd,xlwt
# 在使用xlrd库是要注意表格的构成,他有文件名、表明、表头三部分组成。
#要使用python操作表格那就要先打开表格
xlx = xlrd.open_workbook('F:\python\自动化办公\第一个测试表格.xls')
#上面使用了xlrd.open_workbook方法可以打开一个xls表格,那么要怎么指定这个
# 表格里面的第几张表呢?
#打开第一张表
table1 = xlx.sheet_by_index(0)#通过索引打开第一张表
# table2 = xlx.sheet_by_name('第一个表')#通过表明打开表
#上面可以通过索引和表名打开指定的一张表,那么我们怎么操作指定的单元格呢?
#这里有一个技巧(以wps为例):
# 文件----》选项-----》常规与保存-----》勾选R1C1引用样式;
# 这样行和列我们都可以用数字来表示了。
#指定单元格-----读取数据
value1 = table1.cell_value(1,0)#指定索引进行寻找内容 第一个值指的是行,第二个值指的是列
print(value1)
value2 = table1.cell(0,2).value#第一个值指的是行,第二个值是列,按照索引进行取值
print(value2)
value3 = table1.row(1)[1].value#指定第几行
print(value3)
#指定单元格-------写数据
# 写入数据要是用xlwt库
对表格写数据
import xlwt
#这里可以之间创建一个表格文件
#新建一个工作部要实例化一个对象,这个位置相当于创建了一个文件
new_workbook = xlwt.Workbook()
#接下来要创建一个工作表
workSheet = new_workbook.add_sheet('xlwt表格使用')
#向指定位置写入内容
workSheet.write(0,0,'test')
# 保存
new_workbook.save(r'F:\python\自动化办公\xlwt表格使用.xls')
操作具有格式的表格
设置格式:xlx = xlrd.open_workbook(’./test.xls’, formatting_info=True)
初始化style:style = xlwt.XFSStyle()
初始化字体:font = xlwt.Font()
初始化边框:border = xlwt.Borders()
初始化对齐:alignment = xlrt.Alignment.HORZ_CENTER
-
设置水平居中对齐:HORZ_CENTER
-
设置垂直居中对齐:VERT_CENTER
保存:new_xlx.save(r’D:\python总文件\Local\操作表格\text.xls’)
#如果想使用表格的模板放入到程序中
# 那么可以使用xlutiles库
from xlutils.copy import copy
import xlwt,xlrd
# F:\python\自动化办公\学生表.xls
#实例化文件
#想要往模板里面写入数据那么就要先复制模板
xlx = xlrd.open_workbook('./test.xls', formatting_info=True)#格式信息
# print(xlx)
she = xlx.sheet_by_index(0)
# print(she.book)
#将原来的工作部的内容copy出来
new_xlx = copy(xlx)
#新的工作部中获取到第0个表
new_she = new_xlx.get_sheet(0)
#在表中写内容
# new_she.write(2,1,'你好')
# new_she.write(3,1,'你好')
# new_she.write(4,1,'你好')
# new_she.write(5,1,'你好')
# 上面的内容写入的是默认格式
# 如果想要设置样式,需要初始化样式
style = xlwt.XFStyle()
#设置字体
font = xlwt.Font()
font.name = '微软雅黑'
font.bold = True
font.height = 360 #18*20
#将字体格式添加到整体样式中去
style.font = font
#设置边框
border = xlwt.Borders()
border.top = xlwt.Borders.THIN#表示细线
border.bottom = xlwt.Borders.THIN
border.left = xlwt.Borders.THIN
border.right = xlwt.Borders.THIN
#设置完以后要将样式添加到整体样式中去
style.borders = border
#设置对齐格式 水品对齐 垂直对其
alignment = xlwt.Alignment()
alignment.horz = xlwt.Alignment.HORZ_CENTER#水平居中对齐
alignment.horz = xlwt.Alignment.VERT_CENTER#垂直居中对齐
style.alignment = alignment
new_she.write(2,1,'你好',style)
new_she.write(3,1,'你好',style)
new_she.write(4,1,'你好',style)
new_she.write(5,1,'你好',style)
# new_xlx.save('./text.xls')
new_xlx.save(r'D:\python总文件\Local\work\自动化办公\操作表格\text.xls')
返回整个表格的行数
table.nrows