久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

python 使用xlsxwriter循環(huán)向excel中插入數(shù)據(jù)和圖片的操作

瀏覽:76日期:2022-06-30 16:19:38

寫(xiě)入Excel中后有顯示第一列客戶(hù)款號(hào)總庫(kù)存這些,開(kāi)始寫(xiě)在第12行第一列開(kāi)始寫(xiě)入,一行寫(xiě)入5個(gè),然后再隔12行,再寫(xiě)入下邊的數(shù)據(jù),圖片需要對(duì)應(yīng)客戶(hù)款號(hào)在Excel寫(xiě)入圖片,類(lèi)似下面的格式

python 使用xlsxwriter循環(huán)向excel中插入數(shù)據(jù)和圖片的操作

python 使用xlsxwriter循環(huán)向excel中插入數(shù)據(jù)和圖片的操作

import xlsxwriterimport os#以空字符填充缺失值,不然寫(xiě)入數(shù)據(jù)會(huì)報(bào)錯(cuò)data.fillna(’’,inplace=True)#創(chuàng)建一個(gè)新Excel文件并添加一個(gè)工作表。workbook = xlsxwriter.Workbook(’images.xlsx’)worksheet = workbook.add_worksheet()# # 加寬第2列,,根據(jù)圖片縮放大小進(jìn)行調(diào)整。worksheet.set_column(’B:B’, 20)worksheet.set_column(’D:D’, 20)worksheet.set_column(’F:F’, 20)worksheet.set_column(’H:H’, 20)##寫(xiě)入數(shù)據(jù)和圖片for i in range(len(data)): for j in range(4): worksheet.write(i//5*16+j+12,i%5*2 ,[’客戶(hù)款號(hào)’,’總庫(kù)存’,’零售數(shù)量’,’前一周’][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,’寫(xiě)入成功!’) i+=1workbook.close()

0 寫(xiě)入成功!1 寫(xiě)入成功!2 找不到 N038400237.jpg3 找不到 N038400301.jpg4 找不到 N039400310.jpg5 找不到 N038400552.jpg6 寫(xiě)入成功!7 找不到 N038401101.jpg8 找不到 N039400105.jpg9 找不到 N039400219.jpg

效果如下:

python 使用xlsxwriter循環(huán)向excel中插入數(shù)據(jù)和圖片的操作

當(dāng)然還有合并單元格,設(shè)置單元格格式,以及處理圖片的操作沒(méi)寫(xiě),有時(shí)間再來(lái)補(bǔ)充!

補(bǔ)充:python對(duì)excel表格處理需要導(dǎo)入相關(guān)的庫(kù):

(1)、操作xls格式的表格文件:

讀取:xlrd

寫(xiě)入:xlwt

修改(追加寫(xiě)入):xlutils

(2)、操作xlsx格式的表格文件:

讀取/寫(xiě)入:openpyxl

*如果用操作xls的方法去寫(xiě)入xlsx文件,會(huì)導(dǎo)致文件損壞無(wú)法打開(kāi);反之一樣。

(一)、操作xls格式表格

1、讀取excel表格數(shù)據(jù)

import xlrd #從excle里讀數(shù)據(jù)import xlwt #創(chuàng)建新的表格寫(xiě)入數(shù)據(jù)import xlutils #往已有表格中追加數(shù)據(jù) class IOExcel(object): def __init__(self,file): self.file = file def get_sheet(self,sheetname): excelfile=xlrd.open_workbook(self.file) self.sheet = excelfile.sheet_by_name(sheetname) return self.sheet #獲取第*行的數(shù)據(jù) def get_rowData(self,row): cols = self.sheet.ncols #獲取sheet頁(yè)有多少列 Cells = [] for i in range(0,cols): Cells.append(self.sheet.cell(row,i).value) return Cells

2、創(chuàng)建表格寫(xiě)入數(shù)據(jù)

def write_excel(self,sheet_name, value): index = len(value) # 獲取需要寫(xiě)入數(shù)據(jù)的行數(shù) workbook = xlwt.Workbook() # 新建一個(gè)工作簿 sheet = workbook.add_sheet(sheet_name) # 在工作簿中新建一個(gè)表格 for i in range(0, index): for j in range(0, len(value[i])): sheet.write(i, j, value[i][j]) #向表格中寫(xiě)入數(shù)據(jù)(對(duì)應(yīng)的行和列) workbook.save(self.file) # 保存工作簿

3、向已存在表格中追加數(shù)據(jù)

def write_excel_xls_append(self,value): index = len(value) # 獲取需要寫(xiě)入數(shù)據(jù)的行數(shù) workbook = xlrd.open_workbook(self.file) # 打開(kāi)工作簿 sheets = workbook.sheet_names() # 獲取工作簿中的所有表格 worksheet = workbook.sheet_by_name(sheets[0]) # 獲取工作簿中所有表格中的的第一個(gè)表格 rows_old = worksheet.nrows # 獲取表格中已存在的數(shù)據(jù)的行數(shù) new_workbook = copy(workbook) # 將xlrd對(duì)象拷貝轉(zhuǎn)化為xlwt對(duì)象 new_worksheet = new_workbook.get_sheet(0) # 獲取轉(zhuǎn)化后工作簿中的第一個(gè)表格 for i in range(0, index): for j in range(0, len(value[i])): new_worksheet.write(i+rows_old, j, value[i][j]) # 追加寫(xiě)入數(shù)據(jù),注意是從i+rows_old行開(kāi)始寫(xiě)入 new_workbook.save(self.file) # 保存工作簿(二)、操作xlsx格式表格

wb = openpyxl.Workbook() #創(chuàng)建一個(gè)新的excelwe = wb.create_sheet(’第二頁(yè)’,0) #修改sheet頁(yè)的名字;設(shè)置插入sheet頁(yè)的位置,默認(rèn)在上一頁(yè)后面( 初始創(chuàng)建的excel是只有一個(gè)默認(rèn)sheet頁(yè)的,所以設(shè)置位置的值大于1效果都一樣,都是在默認(rèn)sheet頁(yè)的后面接著)# we.title = ’你好’ # 修改sheet頁(yè)的名字#操作單元格we[’A1’]=123124we[’B2’]=’你好’print(we.cell(1,2,’123123’).value) #設(shè)置cell的行號(hào)和列號(hào)和值,返回cell的值wb.save(’C:Userst_fulPycharmProjectstestelementt.xlsx’) #保存表格

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。

標(biāo)簽: python
相關(guān)文章:
主站蜘蛛池模板: 嘉鱼县| 开鲁县| 沅江市| 东丰县| 高台县| 绥德县| 嵩明县| 宁晋县| 星座| 布尔津县| 渑池县| 阳信县| 奇台县| 遂宁市| 乐山市| 利辛县| 来宾市| 顺平县| 平昌县| 怀远县| 法库县| 荣昌县| 荔浦县| 景东| 江北区| 平罗县| 嘉义县| 绥化市| 准格尔旗| 湖南省| 徐州市| 阆中市| 古丈县| 阿拉善右旗| 和静县| 葫芦岛市| 潞西市| 江城| 锡林郭勒盟| 酒泉市| 福清市|