1、使用xlrd模块读取excel
1)安装xlrd模块
wget https://pypi.python.org/packages/source/x/xlrd/xlrd-0.9.3.tar.gz tar -xzvf xlrd-0.9.3.tar.gz cd xlrd-0.9.3 python setup.py install
2)导入模块
import xlrd
3)打开Excel文件读取数据
data = xlrd.open_workbook(‘excelFile.xls‘)
4)使用技巧
4.1获取一个工作表
table = data.sheets()[0] #通过索引顺序获取 table = data.sheet_by_index(0) #通过索引顺序获取 table = data.sheet_by_name(u‘Sheet1‘) #通过名称获取
4.2)获取整行和整列的值(数组)
table.row_values(i) #数据类型为list table.col_values(i)
4.3)获取行数和列数
nrows = table.nrows ncols = table.ncols
4.4)循环行列表数据
for i in range(nrows ): print table.row_values(i)
4.5)获取单元格的值
cell_A1 = table.cell(0,0).value cell_C4 = table.cell(2,3).value
2、使用xlwd写入excel
1)安装xlwd模块
wget https://pypi.python.org/packages/source/x/xlwt/xlwt-0.7.5.tar.gz tar -xzvf xlwt-0.7.5.tar.gz cd xlwt-0.7.5 python setup.py install
2)导入xlwt
import xlwt
3)新建一个excel文件
file = xlwt.Workbook() #注意这里的Workbook首字母是大写 file = Workbook(encoding=‘utf-8‘),就可以在excel中输出中文了,默认是ascii
4)新建一个sheet
table = file.add_sheet(‘sheet name‘)
如果对一个单元格重复操作,会引发
returns error: # Exception: Attempt to overwrite cell: # sheetname=u‘sheet 1‘ rowx=0 colx=0
所以在打开时加cell_overwrite_ok=True 解决
table = file.add_sheet(‘sheet name‘,cell_overwrite_ok=True )
5)写入数据table.write(行,列,value)
table.write(0,0,‘test‘)
6)保存文件
file.save(‘demo.xls‘)
另外,使用style
style = xlwt.XFStyle() # 初始化样式
font = xlwt.Font() #为样式创建字体
font.name = ‘Times New Roman‘
font.bold = True
style.font = font #为样式设置字体
table.write(0, 0, ‘some bold Times text‘, style) # 使用样式
本文出自 “leboit” 博客,谢绝转载!
原文地址:http://leboit.blog.51cto.com/1465210/1582594