赞
踩
xlrd
用于读取文件,xlwt
用于写入文件,xlutils
是两个工具包的桥梁,也就是通过xlrd 读取.xls
文件,然后通过xlutils 将文件内容交给xlwt处理并且保存。
常用API:
#导入 import xlrd # 打开文件 必须是存在的文件路径 wb = xlrd.open_workbook('路径') # 获取文件中所有的sheet对象 objects = wb.sheets() #获取文件中所有的sheet名称 names = wb.sheet_names() # 按照索引获得sheet对象 ws = wb.sheet_by_index(索引值) #按照名称获得sheet对象 ws = wb.sheet_by_name(文件名) #获得当前sheet对象的名称 name = ws.name #获得当前excel文件的sheet个数 n = wb.nsheets #获得当前sheet已使用的行和列 nrows = ws.nrows ncols = ws.ncols # 获得当前sheet某一行或者某一列的所有元素 元素格式是:数据类型:数据值 # 数据类型:0.空,1.字符串,2.数字,3.日期,4.布尔,5.error lst = ws.row(索引值) lst = ws.col(索引值) # 是ws.row(索引值)和s.col(索引值)得到允许切片版本 lst = ws.row_slice(索引值, start_colx=0, end_colx=None) lst = ws.col_slice(索引值, start_rowx=0, end_rowx=None) # 获得当前sheet某一行或者某一列的所有元素的值 lst = ws.row_values(索引值) lst = ws.col_values(索引值) # 获得当前sheet某一行或者某一列的所有元素的数据类型 lst = ws.row_types(索引值,start_colx=0, end_colx=None) lst = ws.col_types(索引值, start_rowx=0, end_rowx=None) # 返回当前sheet某一行已使用的长度 i = ws.row_len(索引值) # 获取当前sheet中某个单元格的元素 元素格式是:数据类型:数据值 # 数据类型:0.空,1.字符串,2.数字,3.日期,4.布尔,5.error n = ws.cell(行索引, 列索引) # 获取当前sheet中某个单元格的元素的值 n = ws.cell_value(行索引, 列索引) n = ws.cell(行索引,列索引).value n = ws.row(行索引)[列索引].value # 获取当前sheet中某个单元格的元素的数据类型 n = ws.cell_type(行索引, 列索引) n = ws.cell(行索引,列索引).ctype n = ws.row(行索引)[列索引].ctype
# 导入
import xlwt
# 新建.xls的文件
nwb = xlwt.Workbook('utf-8')
# 添加工作表
nws = nwb.add_sheet('名称', cell_overwrite_ok=True)
# 在对应单元格上写入内容
nws.write(行索引,列索引,写入内容)
# 保存文件 注意.xls的后缀不能少
nwb.save('文件名.xls')
# 导入
from xlutils.copy import copy
# 用xlrd导入待处理的文件
wb = xlrd.open_workbook('文件名')
#使用copy函数处理 此时的 nwb 不仅具有 xlwt 的功能, 还具有 xlrd 的功能
#也就是既可读又可写.
nwb = copy(wb)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。