xlrd ---读excel
#打开文件
workbook = xlrd.open_workbook(r'F:\')
#获取所有sheet
workbook.sheet_names() 返回一个列表
#根据sheet索引或者名称获取sheet内容
sheet2 = workbook.sheet_by_index(1)
sheet2 = workbook.sheet_by_name('sheet2')
#获取sheet2的名称,行数,列数
sheet2.name,sheet2.nrows,sheet2.ncols
#获取整行和整列的值(数组)
rows = sheet2.row_values(3) #第四行内容
cols = sheet2.col_values(2) #第三列内容
#获取单元格内容
sheet2.cell_value(1,0).encode('utf-8')
#获取单元格内容的数据类型
sheet2.cell(1,0).ctype
2. xlrw --写excel
xlwt 写文件
#创建工作簿
f = xlwt.Workbook(encoding='utf-8')
#创建第一个sheet
sheet1 = f.add_sheet('sheet1')
#写数据,对应 行 列 值
sheet1.write(0,1,label = 'this is the test')
#保存
f.save('xx.xlsx')
3.openpyxl --兼读写excel
新建: wb = openpyxl.Workbook()
删除工作表 wb.remove(sheet)
读取一个表格 wb = openpyxl.load_workbook('')
获取所有工作表名 sheets = wb.get_sheet_names()
获取某一个特定的工作表 sheet = wb.get_sheet_by_name('Sheet2')
获取工作表的表名 sheet_name = sheet.title
获取激活的工作表 sheet = wb.active
获取单元格内容 a = sheet['A2'] a = sheet.cell(1,2) a.value
获取行 sheet.rows
获取列 sheet.columns
获取最大行 sheet.max_row
获取最大列 sheet.max_column
给单元格赋值 sheet['A2'].value = 3
保存单元格 wb.save('')
对比:
1.xlrd,xlwt.分别只是读写,而openpyxl则可同时处理读写
2.xlwt保存的表格后缀必须为xls,而openpyxl可保存xlsx和xls
综上:openpyxl比较合适