Python xlrd excel文件操作代码实例
打开文件
importxlrd
data=xlrd.open_workbook('路径')
获取文件中所有工作表的名称。
data.sheet_names()
相当于进入文件中的一个工作表。
table=data.sheet_by_name('Sheet1')
查看工作表一共有几行
rowNum=table.nrows
查看工作表一共有几列
colNum=table.ncols
查看第一行所有的名称。
farst=table.row_values(0)
查看第一列所有的名称(其中包含合并单元格的)
farst=table.col_values(0)
查看读取内容的格式:(int类型)0empty,1string,2number,3date,4boolean,5error
小应用:
将文件内的内容按照对应关系一一对应,并将空的去除,判断是否有int类型,如果有将转换。
#!/usr/bin/envpython
#_*_coding:utf-8_*_
#__author__='XinBing'
importxlrd
data=xlrd.open_workbook('D:\python\交通费报销单.xlsx')
#打开文件
#data.sheet_names()
##获取文件中所有工作表的名称。
table=data.sheet_by_name('Sheet1')
#相当于进入文件中的一个工作表。
rowNum=table.nrows
#查看工作表一共有几行10
colNum=table.ncols
#查看工作表一共有几列3
farst=table.row_values(0)
#查看第一行所有的名称。
#简单将文件第一行的数值和第二行一一对应,并添加到字典中,最后添加到列表中。
lis=[]
foriinrange(1,rowNum):
#第二行开始循环。
dic={}
fori2inrange(colNum):
#第一列开始。
data=table.cell_value(i,i2)
dic[farst[i2]]=dataiftable.cell(i,i2).ctype!=2elseint(data)
##判断类型是否为数字类型。针对循环出来的行数和列数将内容打印出来。
fork,yindic.items():
#判断字典内容里有没有包含空的元素,如果有就不写入到字典中。默认是全部写入
ifnoty:
dic={}
break
ifdic:
lis.append(dic)
print(lis)
#[{'费用名称':'火车票','金额(元)':921,'单据张数':2},{'费用名称':'油票','金额(元)':3306,'单据张数':13},{'费用名称':'合计','金额(元)':4227,'单据张数':15}]
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。