python实现excel读写数据
本文实例为大家分享了python操作EXCEL的实例源码,供大家参考,具体内容如下
读EXCEL的操作:把excel的数据存储为字典类型
#coding=utf8 #导入读excel的操作库 importxlrd classGenExceptData(object): def__init__(self): try: self.dataDic={} #打开工作薄 self.wkbook=xlrd.open_workbook("Requirement.xls") #获取工作表“requirement” self.dataSheet=self.wkbook.sheet_by_name("requirement") #把数据按按照相应格式写入excel表中 self.readDataToDicl() #保存文件 exceptException,e: print"ReadExcelerror:",e defreadDataToDicl(self): try: nrows=self.dataSheet.nrows ncols=self.dataSheet.ncols printncols,nrows try: forrowNuminrange(1,nrows): #把数据的当前行的元素与上一行元素作比较 #如果不相等执行if语句 try: singleJson={} propertyName=self.dataSheet.cell(rowNum,3).value propertyValue=self.dataSheet.cell(rowNum,4).value ifself.dataSheet.cell(rowNum,0).valueandself.dataSheet.cell(rowNum,2).value: mdEvent=self.dataSheet.cell(rowNum,0).value singleJson["serviceId"]=self.dataSheet.cell(rowNum,2).value singleJson[propertyName]=propertyValue printsingleJson self.dataDic[mdEvent]=singleJson singleJson.clear() exceptException,e: print"GetDataError:",e exceptException,e: print"ReadingDataError:",e exceptException,e: print"ReadingDataTODicError:",e deftest(): GenExceptData() if__name__=="__main__": test()
写EXCEL的操作:把csv文件的数据按照需求写入到excel文件中
#coding=utf8 fromreadCSVimportreadCSV importxlwt classGenTestCase(): def__init__(self,path="E:\\PythonDemo\\OperExcel\\Demo.csv"): self.dataInfor=readCSV(path) #创建工作薄 self.wkbook=xlwt.Workbook() #创建表:“埋点需求” self.dataSheet=self.wkbook.add_sheet("shellt") self.creatHead() defcreatHead(self): firstLine=[] #创建表头 forindexinrange(len(firstLine)): self.dataSheet.write(0,index,firstLine[index]) dataBody=self.dataInfor.buffer printdataBody.__len__() currentrow=1 forrowNuminrange(1,len(dataBody)): forindexinrange(len(dataBody[rowNum])): ifrowNum>1: ifdataBody[rowNum-1][0]!=dataBody[rowNum][0]: printcurrentrow,rowNum ifcurrentrow==1: forcolsinrange(3): cellValue=dataBody[currentrow][cols] cellValue=cellValue.decode("gbk") data=u"%s"%(cellValue) self.dataSheet.write_merge(currentrow,rowNum-1,cols,cols,data) forcolsinrange(6,13): cellValue=dataBody[currentrow][cols] cellValue=cellValue.decode("gbk") data=u"%s"%(cellValue) self.dataSheet.write_merge(currentrow,rowNum-1,cols,cols,data) else: forcolsinrange(3): cellValue=dataBody[currentrow][cols] cellValue=cellValue.decode("gbk") data=u"%s"%(cellValue) self.dataSheet.write_merge(currentrow-1,rowNum-1,cols,cols,data) forcolsinrange(6,12): cellValue=dataBody[currentrow][cols] cellValue=cellValue.decode("gbk") data=u"%s"%(cellValue) self.dataSheet.write_merge(currentrow-1,rowNum-1,cols,cols,data) currentrow=rowNum+1 break forcolsinrange(3,6): cellValue=dataBody[rowNum][cols] cellValue=cellValue.decode("gbk") data=u"%s"%(cellValue) self.dataSheet.write(rowNum,cols,data) self.wkbook.save(r'reqq.xlsx') deftest(): GenTestCase() if__name__=="__main__": test()
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。