excle结构分析
一个excle表格包含多个sheet
一个sheet中包含多行多列
每个单元格具备唯一的行号和列号
xlrd 常用模块
import xlrd # 读取文件 work_book = xlrd.open_workbook("/Users/jerry/Desktop/公司机密数据.xlsx") # 选取一个表 # 获取所有所有表格名称 print(work_book.sheet_names()) # 选择第2个 索引从0开始 sheet = work_book.sheet_by_index(1) # 表格名称 print(sheet.name) # 行数 print(sheet.nrows) # 列数 print(sheet.ncols) #批量读取行数据 # 取出第6行的全部内容包含数据类型 print(sheet.row(6)) # 取出第6行的内容包含数据类型 从第3列开始获取 print(sheet.row_slice(6,start_colx=3)) # 取出第6行的内容包含数据类型 从第3列开始获取 print(sheet.row_slice(6,start_colx=4,end_colx=5)) # 获取该行所有数据类型 一数字表示 # print(sheet.row_types(6)) # print(sheet.row_values(6)) # 单元格的处理 print(sheet.cell(0,0).value) # 取值 print(sheet.cell(0,0).ctype) # 取类型 print(sheet.cell_value(2,0)) # 直接取值 print(sheet.row(0)[0]) # 先取行再取单元格 print(sheet.col(0)) # 第0列所有数据 print(sheet.col(0)) # 先取列再取单元格 print(sheet.cell_type(0,0)) # 单元格位置转换 print(xlrd.cellname(2,1)) print(xlrd.cellnameabs(0,2)) print(xlrd.colname(5)) # 时间类型转换 # print(sheet.cell(6,5).value) # print(xlrd.xldate_as_datetime(sheet.cell(6,5).value,1))
xlwt模块
是python中一个第三方的用于写入excle数据到表格的模块
用代码来编写exlce是非常低效的 所以该模块了解即可。
import xlwt # 创建工作簿 work = xlwt.Workbook() # 创建一个表 sheet = work.add_sheet("员工信息数据") #创建一个字体对象 font = xlwt.Font() font.name = "Times New Roman" # 字体名称 font.bold = True # 加粗 font.italic = True # 斜体 font.underline = True # 下划线 #创建一个样式对象 style = xlwt.XFStyle() style.font = font # 写入标题 for k in keys: sheet.write(0,keys.index(k),k,style) # 写入数据 for i in infos: for k in keys: sheet.write(1 + infos.index(i),keys.index(k),label = i[k]) # 保存至文件 work.save("test.xls")