Python对excel的读取操作分别使用两个模块,一个是xlrd用于读取excel的数据,一个事xlwt用于向excel中写入数据。
1.读取excel的数据,使用xlrd
# coding=utf-8import xlrdworkbook = xlrd.open_workbook(r'C:\Users\pwang\Desktop\test1.xls') # 打开xls文件sheetNames = workbook.sheet_names() # 获取excel中的页名字print(sheetNames)# 根据sheet索引或者名称获取sheet内容,同时获取sheet名称、行数、列数sheet1 = workbook.sheet_by_index(0)print(sheet1.name, sheet1.nrows, sheet1.ncols)# 根据sheet名称获取整行和整列的值rows = sheet1.row_values(3) # 获取第几行的数据print(rows)cols = sheet1.col_values(2) # 获取第几列的数据sheet1.cell(1, 2).valueprint(cols)# 获取指定单元格的内容print(sheet1.cell(1, 0).value) # 获取第二行第一列的数据# 获取单元格内容的数据类型print(sheet1.cell(1, 0).ctype) # 第2行第1列:# ctype : 0 empty,1 string, 2 number, 3 date, 4 boolean, 5 error# 获取单元内容为日期类型的方式from datetime import datedate_value = xlrd.xldate_as_tuple(sheet1.cell_value(1, 1), workbook.datemode)print(date_value[:3])print(date(*date_value[:3]).strftime('%Y/%m/%d'))print(sheet1.merged_cells)merge = []for (rlow, rhigh, clow, chigh) in sheet1.merged_cells: merge.append([rlow, clow])for index in merge: print(sheet1.cell_value(index[0], index[1]))
2.向excel中写入数据,使用xlwt