python中对Excel进行读写操作
额,因为烦透了手动的操作Excel表,就花时间把python操作Excel表学了一下。好吧,我承认我很懒......
模块介绍:
xlrd 0.7.5 下载地址:http://pypi.python.org/pypi/xlrd 文档地址:https://secure.simplistix.co.uk/svn/xlrd/trunk/xlrd/doc/xlrd.html
xlwt 0.7.3 下载地址:http://pypi.python.org/pypi/xlwt 文档地址:https://secure.simplistix.co.uk/svn/xlwt/trunk/xlwt/doc/xlwt.html
模块安装:
分别进入到xlrd和xlwt文件中对setup.py进行安装,安装命令为setup.py install
进入python解释器,输入import xlwt,正常无报错即可
下面是我写的一个将Excle文件中的数据读取到普通文本中,和从普通文本写到Excel的一个互换程序:
1 #encoding:utf8
2 import xlrd
3 import xlwt
4
5 class OperExcel():
6 #读取Excel表
7 def rExcel(self,inEfile,outfile):
8 rfile = xlrd.open_workbook(inEfile)
9 #创建索引顺序获取一个工作表
10 table = rfile.sheet_by_index(0)
11 #其他方式
12 #table = rfile.sheets()[0]
13 #table = rfile.sheet_by_name(u'Sheet1')
14
15 #获取整行,整列的值
16 table.row_values(0)
17 table.col_values(0)
18
19 #获取行数和列数
20 nrows = table.nrows - 1
21 ncols = table.ncols
22
23 #循环获取列表的数据
24 #for i in range(nrows):
25 # print table.row_values(i)
26 wfile = open(outfile,'w')
27 #获取第一列中的所有值
28 for i in range(nrows):
29 #table.cell(i,0).value获取某一单元格的值
30 wfile.write(table.cell(i,0).value.encode('utf8') + '\n')
31 wfile.close()
32
33 #将数据写入Excel表
34 def wExcel(self,infile,outEfile):
35 rfile = open(infile,'r')
36 buf = rfile.read().split('\n')
37 rfile.close()
38
39 w = xlwt.Workbook()
40 sheet = w.add_sheet('sheet1')
41 for i in range(len(buf)):
42 print buf[i]
43 sheet.write(i,0,buf[i].decode('utf8'))
44 w.save(outEfile)
45
46 if __name__ == '__main__':
47 t = OperExcel()
48 t.rExcel('test.xls','test')
49 t.wExcel('test','1.xls')
50