Xlrd和xlwt

读模块

import xlrd
excel=xlrd.open_workbook('xxx.xls') #打一个表格
sheet=excel.sheet_by_index(0) #通过索引获取表格
sheet=excel.sheet_by_name(u'xxx') #通过名称获取表格
sheet.row_values(i) #第i行
sheet.col_values(i) #第i列
nrows = sheet.nrows #行数
ncols = sheet.ncols #列数
cell_A1 = sheet.cell(0,0).value #单元格 A1
cell_C4 = sheet.cell(2,3).value #单元格 C4
cell_A1 = sheet.row(0)[0].value #另一种写法
cell_A2 = sheet.col(1)[0].value #另一种写法

写模块

import xlwt
style0 = xlwt.easyxf('font: name Times New Roman, color-index red, bold on ;align: wrap on',
num_format_str='#,##0.00') #样式0
style1 = xlwt.easyxf(num_format_str='D-MMM-YY') #样式1

excel=xlwt.Workbook() #获取一个xls实例
sheet=excel.add_sheet(u'xxx',cell_overwrite_ok=True) #添加一个sheet,第二个参数不是必须的
sheet.write(row,col,value,set_style('Times New Roman',220,True)) #写入值,第四个参数不是必须的
sheet.write(row,col,value,style0)
excel.save('xxx.xls') #保存

一些样式设置

#边框
borders = xlwt.Borders() 
borders.left = 1
borders.right = 1
borders.top = 1
borders.bottom = 1
#对齐
alignment=xlwt.Alignment()
alignment.horz = Alignment.HORZ_CENTER #垂直对齐
alignment.vert = xlwt.Alignment.VERT_CENTER # 水平对齐
alignment.wrap = xlwt.Alignment.WRAP_AT_RIGHT # 自动换行
# 初始化样式
style = xlwt.XFStyle()  
style.alignment = alignment
style.borders = borders
#行高
sheet.row(count).height_mismatch = True
sheet.row(count).height = 550
#列宽
sheet.col(0).width = 18000 
#合并单元格,0-0行,0-4列
sheet.write_merge(0, 0, 0, 4, jrow[0],style) 
#插入公式
worksheet.write(1, 0, xlwt.Formula('A1*B1'))