|
1、使用xlrd模块读取excel
1)安装xlrd模块
2)导入模块
3)打开Excel文件读取数据
1
| data = xlrd.open_workbook('excelFile.xls')
|
4)使用技巧
4.1获取一个工作表
1
2
3
| table = data.sheets()[0] #通过索引顺序获取
table = data.sheet_by_index(0) #通过索引顺序获取
table = data.sheet_by_name(u'Sheet1') #通过名称获取
|
4.2)获取整行和整列的值(数组)
1
2
| table.row_values(i) #数据类型为list
table.col_values(i)
|
4.3)获取行数和列数
1
2
| nrows = table.nrows
ncols = table.ncols
|
4.4)循环行列表数据
1
2
| for i in range(nrows ):
print table.row_values(i)
|
4.5)获取单元格的值
1
2
| cell_A1 = table.cell(0,0).value
cell_C4 = table.cell(2,3).value
|
2、使用xlwd写入excel
1)安装xlwd模块
2)导入xlwt
3)新建一个excel文件
1
2
| file = xlwt.Workbook() #注意这里的Workbook首字母是大写
file = Workbook(encoding='utf-8'),就可以在excel中输出中文了,默认是ascii
|
4)新建一个sheet
1
| table = file.add_sheet('sheet name')
|
如果对一个单元格重复操作,会引发
1
2
3
| returns error:
# Exception: Attempt to overwrite cell:
# sheetname=u'sheet 1' rowx=0 colx=0
|
所以在打开时加cell_overwrite_ok=True 解决
1
| table = file.add_sheet('sheet name',cell_overwrite_ok=True )
|
5)写入数据table.write(行,列,value)
1
| table.write(0,0,'test')
|
6)保存文件
另外,使用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) # 使用样式
|
|