執行代碼時excel_copy復制能夠成功,生成一個帶時間戳的excel檔案,但是在使用excel_write時,執行到fw.get_sheet(0).write(row,column,content)時就報錯,File "D:\Python\Python38\lib\site-packages\xlrd\book.py", line 699, in get_sheet
raise XLRDError("Can't load sheets after releasing resources.")
xlrd.biffh.XLRDError: Can't load sheets after releasing resources.
函式如下:
def excel_write(dir,name,row,column,content,):
#dir: 測驗腳本路徑帶/,name: 檔案名稱帶后綴, row: 從第幾行寫入,column:從第幾列寫入
os.chdir(dir)
fw = xlrd.open_workbook(name)
fw.get_sheet(0).write(row,column,content)
fw.save(name)
def excel_copy(dir,name,new_path):
#new_path格式:/test result/
os.chdir(globalValues.GLOBAL_path1+dir)
fr = xlrd.open_workbook(name,on_demand=False)
fn = copy(fr)
# 將測驗腳本加上時間戳作為后綴另存
rename_list = list(name)
index = name.find('.xl')
rename_list.insert(index, time.strftime("%Y%m%d%H%M%S"))
rename = ''.join(rename_list)
new_path = globalValues.GLOBAL_path1+new_path
fn.save(new_path+rename)
return new_path,rename
執行陳述句如下:
(new_path,rename) = excel_copy('/Test case/','test script.xls','/test result/')
time.sleep(1)
excel_write(new_path,rename,1,4,'test')
uj5u.com熱心網友回復:
已解決,def excel_write(dir,name,row,column,content,)內增加copy就不報錯了。轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/229533.html
