PHP前端开发

Python实现自定义顺序、排列写入数据到Excel的方法

百变鹏仔 3小时前 #Python
文章标签 自定义

这篇文章主要介绍了python实现自定义顺序、排列写入数据到excel的方法,涉及python针对excel文件的数据处理及读写相关操作技巧,需要的朋友可以参考下

本文实例讲述了Python实现自定义顺序、排列写入数据到Excel的方法。分享给大家供大家参考,具体如下:

例1. 数据框顺序写入Excel:


data=aimport xlsxwriterworkbook = xlsxwriter.Workbook('F:/chart1.xlsx')worksheet = workbook.add_worksheet('请求接口')title = [u'订单号',u'债权编号',u'请求参数',u'创建时间',u'结果']print data.iloc[:,0]format=workbook.add_format()format.set_border(1)format_title=workbook.add_format()format_title.set_border(1)format_title.set_bg_color('#cccccc')format_title.set_align('center')format_title.set_bold()format_ave=workbook.add_format()format_ave.set_border(1)format_ave.set_num_format('0.00')worksheet.write_row('A1',title,format_title)worksheet.write_column('A2:', data.iloc[:,0],format)worksheet.write_column('B2', data.iloc[:,1],format)worksheet.write_column('C2', data.iloc[:,2],format)worksheet.write_column('D2', data.iloc[:,3],format)worksheet.write_column('E2', data.iloc[:,4],format)workbook.close()

例2. (自动报表):


#coding: utf-8import xlsxwriterworkbook = xlsxwriter.Workbook('F:/chart.xlsx')worksheet = workbook.add_worksheet()chart = workbook.add_chart({'type': 'column'})title = [u'业务名称',u'星期一',u'星期二',u'星期三',u'星期四',u'星期五',u'星期六',u'星期日',u'平均流量']buname= [u'业务官网',u'新闻中心',u'购物频道',u'体育频道',u'亲子频道']data = [  [150,152,158,149,155,145,148],  [89,88,95,93,98,100,99],  [201,200,198,175,170,198,195],  [75,77,78,78,74,70,79],  [88,85,87,90,93,88,84],]print dataformat=workbook.add_format()format.set_border(1)format_title=workbook.add_format()format_title.set_border(1)format_title.set_bg_color('#cccccc')format_title.set_align('center')format_title.set_bold()format_ave=workbook.add_format()format_ave.set_border(1)format_ave.set_num_format('0.00')worksheet.write_row('A1',title,format_title)worksheet.write_column('A2', buname,format)worksheet.write_row('B2', data[0],format)worksheet.write_row('B3', data[1],format)worksheet.write_row('B4', data[2],format)worksheet.write_row('B5', data[3],format)worksheet.write_row('B6', data[4],format)def chart_series(cur_row):  worksheet.write_formula('I'+cur_row,    '=AVERAGE(B'+cur_row+':H'+cur_row+')',format_ave)  chart.add_series({    'categories': '=Sheet1!$B$1:$H$1',    'values':   '=Sheet1!$B$'+cur_row+':$H$'+cur_row,    'line':    {'color': 'black'},    'name':  '=Sheet1!$A$'+cur_row,  })for row in range(2, 7):  chart_series(str(row))chart.set_table()chart.set_style(30)chart.set_size({'width': 577, 'height': 287})chart.set_title ({'name': u'业务流量周报图表'})chart.set_y_axis({'name': 'Mb/s'})worksheet.insert_chart('A8', chart)workbook.close()