rom xlrd import open_workbook
from xlutils.copy import copy
def write_excel_xls_append(name,code):
xls_file = 'D:\\test\\scrpit\\Parametric\\parametric.xls'
# 打开文件,formatting_info=True是保留格式,但是不一定能格式能全部保留formatting_info=Flase是不保留,默认不保留格式,且对全表其作用不是当前sheet
wb =open_workbook(xls_file,formatting_info=True)
## 将xlrd的对象转化为xlwt的对象,这个就是转换成写,xlrd只能读,xlwt只能写。xlutils能读能写,但是要依赖xlrd和xlwt
excel = copy(wb)
# 转换成xlwt对象后切换第一张表
excel_table = excel.get_sheet(0)
# xlrd对象的第一张表
sheet=wb.sheets()[0]
# irow在当前sheet的总行里面这边是读取,所以要用xlrd对象的列表
for irow in range(sheet.nrows):
# c_row在当前sheet里的行的[irow]里
c_row = sheet.row(irow)
if c_row[0].value == name:
# 写入是用xlwt对象的
excel_table.write(irow,1,code)
# 修改完成后必须保存,这种相当于你先读取这种表然后用复制一份用xlwt写入在保存回来,不知道本人这样理解对不对如果不对请大佬指出
excel.save(xls_file)
在做编辑的时候不能打开xls文件不然会报错