https://www.cnblogs.com/zhugaopeng/p/9746732.html
项目中需要生成excel表格,在网上查了一些资料后,整理记录下。
- 读excel表格
'''
读取XLS,XLSX文件
'''
def readExcelFile(filename):
# 打开工作表
workbook = xlrd.open_workbook(filename=filename)
# 用索引取第一个工作薄
booksheet = workbook.sheet_by_index(0)
# 返回的结果集
for i in range(booksheet.nrows):
print(booksheet.row_values(i))
代码解释:
第6行,xlrd.open_workbook打开一个已经存在的excel文件,文件不存在会造成打开失败。
第8行,通过索引获取工作薄对象,workbook.sheet_by_index;也可以通过名称获取工作薄,workbook.sheet_by_name
第10行,booksheet.nrows获取工作薄的总行数,同样的,booksheet.ncols获取工作薄的总列数
第11行,booksheet.row_values(i)获取一整行的内容
该方法对python2.x和python3.x通用,也适用于打开XLS,XLSX文件
- 写excel文件
'''
写XLS,XLSX文件
@filename 文件名
@header 列头
@content 内容
'''
def writeExcelFile(filename, header, content):
# 因为输入都是Unicode字符,这里使用utf-8,免得来回转换
workbook = xlwt.Workbook(encoding='utf-8')
booksheet = workbook.add_sheet('Sheet 1', cell_overwrite_ok=True)
# 写列头
row = 0
for col in range(len(header)):
booksheet.write(row, col, header[col])
# 写内容
for lines in content:
row += 1
for col in range(len(lines)):
booksheet.write(row, col, lines[col])
# 保存文件
workbook.save(filename)
代码解释:
写excel文件的大致过程是
-
xlwt.Workbook 先建一个workbook对象
-
添加工作薄 workbook.add_sheet
-
写单元格 booksheet.write(row, col, text)
-
保存文件 workbook.save
该方法对python2.x和python3.x通用,也适用于写XLS,XLSX文件