Python自动化办公(一):python读取excel数据之xlrd

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))
经验分享 程序员 微信小程序 职场和发展