Python 处理 Excel

首先讲一下两个库:xlrd 和 pyExcelerator,xlrd从名字上来看就是读excel比较方便的,而pyExcelerator对于生成excel并写excel很方便。让我们分析一下上述代码的两个函数:

 

   
   
   
   
1 def openExcelFile(self,index):
2 self.bk = xlrd.open_workbook(self.fname)
3 self.sh = self.bk.sheets()[index]
4 self.nrows = self.sh.nrows
5 self.dic3 = {}

      行2是打开一个文件名为self.fname的excel工作薄,行3是获取工作薄中的第(index+1)张表,因为一个工作薄里可以新建好几张表,它 们的索引从0开始,行4记录了这张表里数据的行数。下面读取每个表格的值就很容易了,sh.row(i)[3]这个就代表第i行的第4列.特别注意 sh.row(i)[3][7:-1]才能取到正确的字符串值,和excel的编码有关。

 

 def saveResult(self):
2 wb = Workbook()
3 for key,values in CpuTestTime.StateTable.items():
4 loop = 1
5 ws = wb.add_sheet(key)
6 ws.write(0,0,'STATE')
7 ws.write(0,1,'ELAPSED_TIME')
8 ws.write(0,2,'CPU_ELAPSED_TIME')
9 ws.write(0,3,'COUNT')
10 for value in values:
11 ws.write(loop,0,value)
12 ws.write(loop,1,round(self.dic3[key][value]['ELAPSED_TIME'],2))
13 ws.write(loop,2,round(self.dic3[key][value]['CPU_ELAPSED_TIME'],2))
14 ws.write(loop,3,self.dic3[key][value]['COUNT'])
15 loop = loop+1
16 wb.save('result'+FILENAME) 上面这段代码,行2创建一个excel工作薄,行5增加一个表,行6写cell(0,0)单元格,值为最后一个参数'STATE'。行16保存到文件。           这种方式处理excel表比较好懂,也比较简单

你可能感兴趣的:(Excel)