最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

 更新時(shí)間:2021年01月01日 14:03:40   作者:讀童話的狼  
這篇文章主要介紹了python 使用xlsxwriter循環(huán)向excel中插入數(shù)據(jù)和圖片的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧

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

import xlsxwriter
import os
#以空字符填充缺失值,不然寫入數(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)
##寫入數(shù)據(jù)和圖片
for i in range(len(data)):
  for j in range(4):
    worksheet.write(i//5*16+j+12,i%5*2 ,['客戶款號(hào)','總庫存','零售數(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,'寫入成功!')
  i+=1
workbook.close()
0 寫入成功!
1 寫入成功!
2 找不到 N038400237.jpg
3 找不到 N038400301.jpg
4 找不到 N039400310.jpg
5 找不到 N038400552.jpg
6 寫入成功!
7 找不到 N038401101.jpg
8 找不到 N039400105.jpg
9 找不到 N039400219.jpg

效果如下:

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

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

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

讀?。簒lrd

寫入:xlwt

修改(追加寫入):xlutils

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

讀取/寫入:openpyxl

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

(一)、操作xls格式表格

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

import xlrd  #從excle里讀數(shù)據(jù)
import xlwt  #創(chuàng)建新的表格寫入數(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頁有多少列
    Cells = []
    for i in range(0,cols):
      Cells.append(self.sheet.cell(row,i).value)
    return Cells

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

def write_excel(self,sheet_name, value):
  index = len(value) # 獲取需要寫入數(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])   #向表格中寫入數(shù)據(jù)(對(duì)應(yīng)的行和列)
  workbook.save(self.file)   # 保存工作簿

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

def write_excel_xls_append(self,value):
  index = len(value) # 獲取需要寫入數(shù)據(jù)的行數(shù)
  workbook = xlrd.open_workbook(self.file) # 打開工作簿
  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]) # 追加寫入數(shù)據(jù),注意是從i+rows_old行開始寫入
  new_workbook.save(self.file) # 保存工作簿

(二)、操作xlsx格式表格

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

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

相關(guān)文章

  • 詳解Python字典查找性能

    詳解Python字典查找性能

    這篇文章主要為大家介紹了Python字典查找性能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助<BR>
    2021-12-12
  • Python打印“菱形”星號(hào)代碼方法

    Python打印“菱形”星號(hào)代碼方法

    本篇文章通過代碼實(shí)例給大家詳細(xì)分析了Python打印“菱形”星號(hào)代碼方法,對(duì)此有需要的朋友參考下吧。
    2018-02-02
  • Python 中的 copy()和deepcopy()

    Python 中的 copy()和deepcopy()

    這篇文章主要介紹了Python 中的 copy()和deepcopy(),下面詳細(xì)介紹該內(nèi)容并附上詳細(xì)代碼,需要的朋友可以參考一下文章的具體內(nèi)容,希望對(duì)你有所幫助
    2021-11-11
  • 通過實(shí)例解析python描述符原理作用

    通過實(shí)例解析python描述符原理作用

    這篇文章主要介紹了通過實(shí)例解析python描述符原理作用,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-01-01
  • python使用nibabel和sitk讀取保存nii.gz文件實(shí)例

    python使用nibabel和sitk讀取保存nii.gz文件實(shí)例

    這篇文章主要介紹了python使用nibabel和sitk讀取保存nii.gz文件實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-07-07
  • Python zip函數(shù)打包元素實(shí)例解析

    Python zip函數(shù)打包元素實(shí)例解析

    這篇文章主要介紹了Python zip函數(shù)打包元素實(shí)例解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-12-12
  • 淺析python中的迭代與迭代對(duì)象

    淺析python中的迭代與迭代對(duì)象

    在本文總小編給大家整理了關(guān)于python之中的迭代與迭代對(duì)象的相關(guān)基礎(chǔ)知識(shí)點(diǎn)內(nèi)容,需要的朋友們學(xué)習(xí)下。
    2018-10-10
  • 使用Flask和Django中解決跨域請(qǐng)求問題

    使用Flask和Django中解決跨域請(qǐng)求問題

    這篇文章主要介紹了使用Flask和Django中解決跨域請(qǐng)求問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2021-04-04
  • Python 讀取千萬級(jí)數(shù)據(jù)自動(dòng)寫入 MySQL 數(shù)據(jù)庫

    Python 讀取千萬級(jí)數(shù)據(jù)自動(dòng)寫入 MySQL 數(shù)據(jù)庫

    這篇文章主要介紹了Python 讀取千萬級(jí)數(shù)據(jù)自動(dòng)寫入 MySQL 數(shù)據(jù)庫,本篇文章會(huì)給大家系統(tǒng)的分享千萬級(jí)數(shù)據(jù)如何寫入到 mysql,分為兩個(gè)場(chǎng)景,兩種方式
    2022-06-06
  • 在OpenCV里使用特征匹配和單映射變換的代碼詳解

    在OpenCV里使用特征匹配和單映射變換的代碼詳解

    這篇文章主要介紹了在OpenCV里使用特征匹配和單映射變換的方法,本文通過圖文實(shí)例代碼相結(jié)合給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-10-10

最新評(píng)論

潮安县| 崇礼县| 百色市| 安吉县| 仪征市| 屏山县| 周至县| 景谷| 武清区| 平远县| 临武县| 清镇市| 隆昌县| 连山| 沅江市| 扶绥县| 武定县| 万山特区| 寿阳县| 阳江市| 宜君县| 呼图壁县| 湖北省| 霍邱县| 贵溪市| 双城市| 嘉义县| 安塞县| 罗山县| 武冈市| 汝阳县| 海伦市| 博罗县| 永胜县| 中山市| 收藏| 揭西县| 海南省| 堆龙德庆县| 阳江市| 湘潭市|