一、xlrd
xlrd只能对excel进行读取,不可编辑修改。该模块属于第三方模块,需要安装模块包并引入。pip install xlrd
常用的方法:
import xlrd book = xlrd.open_workbook('stu.xls') sheet = book.sheet_by_index(0)#通过sheet表索引获取到sheet表 # sheet2 = book.sheet_by_name('shee1')#通过sheet表名称获取 # print(sheet.cell(0,0).value) #指定sheet页里面行和列获取数据 # print(sheet.cell(1,0).value) #指定sheet页里面行和列获取数据 # print(sheet.row_values(0)) #这个获取到第几行的内容 # print(sheet.row_values(1)) #这个获取到第几行的内容 # print(sheet.nrows) #获取到excel里面总共有多少行 # for i in range(sheet.nrows): #循环获取到每行数据 # print(sheet.row_values(i)) print(sheet.ncols) #总共多少列 print(sheet.col_values(0)) #取第几列的数据
二、xlutils
xlutils可以对excle进行修改,修改的原理是先copy一份,然后再对copy的文件进行修改并保存。
import xlrd from xlutils import copy#必须这么写,要不然copy函数用不了 book=xlrd.open_workbook('aa.xls')#先用xlrd模块打开一个excel new_book=copy.copy(book)#通过xlutils里面的copy方法复制一份excel sheet=new_book.get_sheet(0)#new_book是xlutils获取到的,必须用xlutils里面的方法获取sheet lis = ['编号','名字','性别','年龄','地址','班级','手机号','金币'] for index,filed in enumerate(lis):#enumerate可以自动对lis进行读取,同时取出下标和值 sheet.write(0,index,filed) # sheet.write(0,0,'编号')#将第0行第0列修改为 编号 # sheet.write(0,1,'名字')#将第0行第1列修改为 名咨 new_book.save('aaa.xls')