xlrd模块

xlrd模块用于从excel中读取信息,例如.xls,.xlsx文件

1.读取到的数据

xlrd模块读取到的数据类型为列表,每一行为一个单独的列表

[[第一行],['第一列','第二列','第三列',...],[第三行]....]

如果有多个sheet,默认读到一个列表中

# 打开xls或xlsx文件,返回Book类文件
workbook = xlrd.open_workbook(filepath)

# 返回工作簿中所有sheet的名字,存放在列表中
workbook.sheet_names()

# 返回工作簿中所有sheet的索引,存放在列表中
workbook.sheets()

# 根据sheet名读取相应sheet,返回该sheet中的内容
workbook.sheet_by_name()

# 根据sheet索引读取相应sheet,返回该sheet中的内容
workbook.sheet_by_index()

# 检查sheet是否导入成功,成功返回True,不成功返回False
workbook.sheet_loaded()

# 释放资源
workbook.release_resources()
# 获取当前sheet中指定列中的内容
sheet.col_values()

# 获取当前sheet中指定行中的内容
sheet.row_values()

# 获取指定行的内容和类型
sheet.row(0)

# 获取指定列的内容和类型
sheet.col(0)

# 返回当前sheet名
sheet.name

# 获取指定行/列的长度
sheet.row_len()    sheet.col_len()

# 获取指定位置的内容,传入行和列
sheet.cell(row,col)          类型:'内容'
sheet.cell_value(0,0)      '内容'

# 对列切片 传入列号,起始行,终止行
sheet.col_slice(1,0,2)

# 对行切片 传入行号,起始列,终止列
sheet.col_slice(1,0,2)

2.写入的数据

# 指定file以utf-8的格式打开
file = xlwt.Workbook(encoding='utf-8')

# 生成工作表并且命名为sheet_name
table = file.add_sheet(sheet_name)

# 将数据写入文件,i是enumerate()函数返回的序号数
for i, p in enumerate(file_lst):
    for j, q in enumerate(p):
        # print i,j,q
        table.write(i, j, q)

# 写入文件,文件名为filename
file.save(filename)
01-10 07:20