python2 对excel表格操作完整示例
本文实例讲述了python2对excel表格操作。分享给大家供大家参考,具体如下:
#!/usr/bin/envpython2 #-*-coding:utf-8-*- """ CreatedonSatDec215:40:352017 @author:260207 """ fromxlutils.copyimportcopy importxlrd importxlwt defset_style(name='TimesNewRoman',height=6,bold=False): #设置单元格样式 style=xlwt.XFStyle()#初始化样式 font=xlwt.Font()#设置字体样式 font.name=name#字体名称'TimesNewRoman' font.bold=bold#加粗 font.color_index=4#颜色 font.height=height#高度 style.font=font#定义字体属性 returnstyle defwrite_excel(bomcode):#创建标准件模板 excel=xlwt.Workbook()#创建工作簿 importdatetime dateTime=datetime.datetime.now().strftime('%Y-%m-%d') sheet1=excel.add_sheet(u'标贴防错系统',cell_overwrite_ok=True) #生成表头,即第一列 sheet1.write(0,0,u'订单编码',set_style('TimesNewRoman',180)) sheet1.write(0,1,u'当前时间',set_style('TimesNewRoman',180)) sheet1.write(0,2,u'检测总量',set_style('TimesNewRoman',180)) sheet1.write(0,3,u'出错数量',set_style('TimesNewRoman',180)) sheet1.write(0,4,u'正确数量',set_style('TimesNewRoman',180)) sheet1.write(0,5,u'合格率',set_style('TimesNewRoman',180)) excel.save(file_dir+str(dateTime)+'.xls')#保存文件 # defseefile(file_dir): importos L=[] forroot,dirs,filesinos.walk(file_dir): forfileinfiles: ifos.path.splitext(file)[1]=='.xls': L.append(os.path.join(root,file)) returnL defadd_excel(passflag,row,error,true):#添加内容 importdatetime dateTime=datetime.datetime.now().strftime('%Y-%m-%d')#查看时间 nowTime=datetime.datetime.now().strftime('%H:%M:%S') workbook=xlrd.open_workbook(file_dir+str(dateTime)+'.xls','r+') new_excel=copy(workbook) ws=new_excel.get_sheet(0)#索引到表格 ws.write(row,0,str(bomcode),set_style('TimesNewRoman',180)) ws.write(row,1,str(nowTime),set_style('TimesNewRoman',180)) ifpassflag==1: ws.write(row,3,error+1,set_style('TimesNewRoman',180)) ws.write(row,4,true,set_style('TimesNewRoman',180)) else: ws.write(row,4,true+1,set_style('TimesNewRoman',180)) ws.write(row,3,error,set_style('TimesNewRoman',180)) ws.write(row,2,error+true+1,set_style('TimesNewRoman',180)) new_excel.save(file_dir+str(dateTime)+'.xls') defpass_rate(row): importdatetime dateTime=datetime.datetime.now().strftime('%Y-%m-%d') workbook112=xlrd.open_workbook(file_dir+str(dateTime)+'.xls','r+') all_excel=copy(workbook112) ws1=all_excel.get_sheet(0) workbook_position=workbook112.sheet_by_index(0) all_value=workbook_position.cell(row,2).value true_value=workbook_position.cell(row,4).value ws1.write(row,5,round(float(true_value)/(all_value),2),set_style('TimesNewRoman',180)) all_excel.save(file_dir+str(dateTime)+'.xls') defdata_analysis(bomcode): importdatetime dateTime=datetime.datetime.now().strftime('%Y-%m-%d') filename=seefile(file_dir) filename=list(reversed(filename)) #增加异常,文件名需按最新时间排列 if(filename==[])or(filenameisNone)or(dateTime!=(filename[0])[-14:-4]): write_excel(bomcode) workbook=xlrd.open_workbook(file_dir+str(dateTime)+'.xls','r+') workbook_position=workbook.sheet_by_index(0) cols_0=workbook_position.col_values(0) ifbomcodeincols_0: row_error=cols_0.index(bomcode) error=workbook_position.cell(row_error,3).value true=workbook_position.cell(row_error,4).value row=row_error else: error=0 true=0 row=len(cols_0) add_excel(passflag,row,error,true) pass_rate(row) if__name__=='__main__': file_dir='C:/Users/Administrator/Desktop/Data_analysis/' bomcode='21122' passflag=0 data_analysis(bomcode) #add_excel(bomcode,passflag,row)
运行后将数据写入如下xls文件:
更多关于Python相关内容感兴趣的读者可查看本站专题:《Python操作Excel表格技巧总结》、《Python文件与目录操作技巧汇总》、《Python文本文件操作技巧汇总》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程》
希望本文所述对大家Python程序设计有所帮助。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。