對于測試人員寫代碼中的Excel主要用于存儲數(shù)據(jù),讀取數(shù)據(jù)
那么這里只需要兩個模塊xlrd讀取內(nèi)容,xlwt寫入內(nèi)容
使用pip install xlrd/xlwt 安裝
也可以官網(wǎng)下載安裝
https://pypi.org/project/xlrd/#files
https://pypi.org/project/xlwt/#files
讀取操作三步搞定:
1李根、獲取到文件
2斥废、讀取sheet頁
3趟畏、對sheet中的值進行讀取
import xlrd
data = xlrd.open_workbook(path) #獲取到當(dāng)前excel文件,默認(rèn)參數(shù)比較多,目前只使用到了路徑
sheet = data.sheet_by_index(0) #獲取excel中sheet頁怨绣,通過下標(biāo)獲取到第一頁
sheet = book.sheet_by_name(sheetname) #通過sheet頁的名稱獲取到sheet
nrows = sheet. nrows #獲取行數(shù)
ncols = sheet. ncols #獲取列數(shù)
cell_values = sheet.cell_value(0,0) #通過坐標(biāo)讀取對應(yīng)位置的信息
再看看寫入的操作
book = xlwt.Workbook(encoding="utf-8") # 打開時默認(rèn)時ascii編碼格式,如果寫入中文需改成utf-8
sheet = book.add_sheet("test") #創(chuàng)建sheet頁荒适,名字為test
sheet.write(0,0,"test1") #指定坐標(biāo)梨熙,行列為0的位置,寫入test1
book.save(path) #寫入后必須進行保存刀诬,否則無法寫入成功
這里會遇到一個問題咽扇,打開已有的數(shù)據(jù)進行新增或者是修改,單用xlwt是無法完成
如果使用這種方式進行操作的話陕壹,百度了下需要先打開文件质欲,copy一份,然后寫入數(shù)據(jù)糠馆,刪除之前的嘶伟,在保存寫入的就可以實現(xiàn)了
需要安裝 xlutils
pip install xlutils
from xlutils.copy import copy
book = xlrd.open_workbook(filepath) #打開已存在的文件
rb = copy(book) #進行復(fù)制
wb = rb.get_sheet(0) #獲取到sheet頁,通過坐標(biāo)
wb.write(0,0,"11111") #寫入數(shù)據(jù)
os.remove(file) #刪除掉之前的源文件
rb.save(file) #保存剛寫入的文件
基本操作差不多就這樣又碌,不是詳解模塊九昧,只是工作中用的進行總結(jié)
總結(jié):
1绊袋、讀取與寫入的基本使用
2、想要寫入已存在的文件進行修改或者新增铸鹰,需要使用xlutils模塊
3癌别、寫入或新增數(shù)據(jù)邏輯,需要先打開蹋笼,拷貝展姐,在寫入,刪除之前文件剖毯,在進行保存