热线电话:13121318867

登录
2020-12-24 阅读量: 836
python利用xlsxwriter同时向excel中插入数据和图片

写入Excel中后有显示第一列客户款号总库存这些,开始写在第12行第一列开始写入,一行写入5个,然后再隔12行,再写入下边的数据,图片需要对应客户款号在Excel写入图片,类似下面的格式

客户款号 总库存 零售数量 前一周

0 N038400201 5.0 6.0 -1.0

1 N038400205 10.0 5.0 0.0

2 N038400237 21.0 29.0 9.0

3 N038400301 7.0 9.0 1.0

4 N039400310 6.0 11.0 0.0

5 N038400552 3.0 17.0 2.0

6 N038400701 NaN NaN NaN

7 N038401101 76.0 45.0 5.0

8 N039400105 4.0 64.0 1.0

9 N039400219 52.0 2.0 1.0

import xlsxwriter

import os#以空字符填充缺失值,不然写入数据会报错

data.fillna('',inplace=True)#创建一个新Excel文件并添加一个工作表。

workbook = xlsxwriter.Workbook('images.xlsx')

worksheet = workbook.add_worksheet()# # 加宽第2列,,根据图片缩放大小进行调整。

worksheet.set_column('B:B', 20)

worksheet.set_column('D:D', 20)

worksheet.set_column('F:F', 20)

worksheet.set_column('H:H', 20)

##写入数据和图片

for i in range(len(data)): for j in range(4): worksheet.write(i//5*16+j+12,i%5*2 ,['客户款号','总库存','零售数量','前一周'][j]) worksheet.write(i//5*16+j+12,i%5*2+1 ,data.iloc[i,0::].values[j]) #插入图片,insert_image(位置行,位置列,文件名,缩放比例) if data.iloc[i,0::].values[0]+'.jpg' not in os.listdir('.\img\\'): print(i,'找不到',data.iloc[i,0::].values[0]+'.jpg') else: worksheet.insert_image(i//5*16,i%5*2+1,'img/'+data.iloc[i,0::].values[0]+'.jpg',{'x_scale': 0.1, 'y_scale': 0.12}) print(i,'写入成功!') i+=1workbook.close()


原文链接:https://blog.csdn.net/fffsolomon/article/details/111594237

50.6346
0
关注作者
收藏
评论(0)

发表评论

暂无数据
推荐帖子