目录
1. xlrd介绍&安装
- 含义:xlrd是一个用于从Excel(无论是.xls还是.xlsx文件)读取数据和格式化信息的库
- 安装:pip install xlrd
2. xlrd使用
2.1 常用单元格中的数据类型(type)
0-->empty(空值)
1-->string(字符串)
2-->number(数字)
3-->date(日期)
4-->boolean(布尔)
5-->error (错误)
2.2 获取工作簿与工作表
- 读取工作簿
import xlrd
file_name = 'weather_expectation.xlsx'
book = xlrd.open_workbook
print(book)
<xlrd.book.Book object at 0x10ec0f580>
- 获取工作表的个数
print(book.nsheets)
- 获取工作表的名字,返回类型是list
print(book.sheet_names())
['资源描述信息', '数据集1']
- 通过索引获取book中一个工作表
print(book.sheets()[1])
- 或者
print(book.sheet_by_index(1))
- 通过表名获取工作表
print(book.sheet_by_name('数据集1'))
- 判断工作表是否存在,返回值为Bool
print(book.sheet_loaded('数据集1' or 1))
True
2.3 读取行数据
- 获取工作表的有效总行数
import xlrd
file_name = 'weather_expectation.xlsx'
book = xlrd.open_workbook(file_name)
sheet_one = book.sheet_by_index(0)
print(sheet_one.nrows)
- 获取第几行(索引从0开始)
print(sheet_one.row(1))
- 获取第几行第几列
# 普通切片
print(sheet_one.row(1)[6:])
# xlrd自带
print(sheet_one.row_slice(1,6))
- 获取改行的数据类型
print(sheet_one.row_types(1))
- 获取第几行的数据,无数据类型
print(sheet_one.row_values(6))
- 统计改行的有效数据
print(sheet.one_row_len(6))
2.4 读取列数据
- 获取工作表的有效总列数
print(sheet_one.ncols)
- 获取第几列第几行
print(sheet_one.col(8,74))
print(sheet_one.col_slice(8,74))
- 获取该列的数据类型
print(sheet_one.col_types(8))
- 获取第几列的数据,无数据类型
print(sheet_one.col_values(8))
2.5 读取单元格数据
- 获取第几行第几列(单元格内容)
print(sheet_one.cell(8,6))
- 获取第几行第几列的数据,无数据类型
print(sheet_one.cell_value(8,6))
print(sheet_one.cell(8,6).value)
- 获取单元格类型
print(sheet_one.cell_type(8,6))
print(sheet_one.cell(8,6).ctype)
2.6 获取合并单元格数据
- 获取合并单元格的索引(开始行, 结束行, 开始列, 结束列)结束行、结束列取不到
print(sheet_one.merged_cells)
- 获取合并单元格内容(开始行、开始列)
print(sheet_one.cell_value(2,0))