1、xlrd介绍
xlrd是python环境下对excel中的数据进行读取的一个模板,可以进行的操作有:
- 读取有效单元格的行数、列数
- 读取指定行(列)的所有单元格的值
- 读取指定单元格的值
- 读取指定单元格的数据类型
2、基本功能
我使用xlrd主要的目的就是为了读取
2.1、导入模块
#安装模块
pip install xlrd
#导入模块
import xlrd
2.2、新建excel表
# 需要文件存在
data = xlrd.open_workbook("C:/Users/admin/Desktop/1.xlsx")
2.3、获取sheet表
#索引获取
table = data.sheet_by_index(0)
#名称获取
table = data.sheet_by_name("sheet1")
#索引顺序获取
table = data.sheets()[0]
#返回所有工作表的名字
names = data.sheet_names()
2.4、行操作
#获取sheet所有有效行数
rows = table.nrows
#返回由该行中所有的单元格对象组成的列表
table.row(rowx)
#返回由该列中所有的单元格对象组成的列表
table.row_slice(rowx)
#返回由该行中所有单元格的数据类型组成的列表
table.row_types(rowx, start_colx=0, end_colx=None)
#返回由该行中所有单元格的数据组成的列表
table.row_values(rowx, start_colx=0, end_colx=None)
#返回该列的有效单元格长度
table.row_len(rowx)
2.5、列操作
#获取列表的有效有效列数
cols = table.ncols
#返回由该列中所有的单元格对象组成的列表
table.col(colx, start_rowx=0, end_rowx=None)
#返回由该列中所有的单元格对象组成的列表
table.col_slice(colx, start_rowx=0, end_rowx=None)
#返回由该列中所有单元格的数据类型组成的列表
table.col_types(colx, start_rowx=0, end_rowx=None)
#返回由该列中所有单元格的数据组成的列表
table.col_values(colx, start_rowx=0, end_rowx=None)
2.6、单元格操作
# 返回单元格对象
table.cell(rowx, colx)
# 返回单元格中的数据类型
table.cell_type(rowx, colx)
#返回单元格中的数据
table.cell_value(rowx,colx)
2.7、完整代码
import xlrd
import xlsxwriter
#打开目录下名为1.xlsx的文档,没有会报错
data = xlrd.open_workbook('C:/Users/admin/Desktop/1.xlsx')
#通过索引顺序获取
table = data.sheets()[0]
name = table.name
#获取该sheet中的有效行数
rows = table.nrows
#获取列表的有效列数
cols = table.ncols
print(name, rows, cols)
for row in range(0,rows):
# 返回由该行中所有的单元格对象组成的列表
row_value1 = table.row(row)
# 返回由该行中所有的单元格对象组成的列表
row_value2 = table.row_slice(row)
# 返回由该行中所有的单元格对象组成的列表
row_value3 = table.row_values(row)
# 返回该列的有效单元格长度
row_value4 = table.row_len(row)
print("row_value1 = ",row_value1)
print("row_value2 = ",row_value2)
print("row_value3 = ",row_value3)
print("row_value4 = ",row_value4)
for col in range(0,cols):
# 返回由该列中所有的单元格对象组成的列表
col_value1 = table.col(col)
# 返回由该列中所有的单元格对象组成的列表
col_value2 = table.col_slice(col)
# 返回由该列中所有单元格的数据组成的列表
col_value4 = table.col_values(col)
# 返回由该列中所有单元格的数据类型组成的列表
col_value3 = table.col_types(col)
print("col_value1 = ",col_value1)
print("col_value2 = ",col_value2)
print("col_value3 = ",col_value3)
print("col_value4 = ",col_value4)
# 获取工作表中单元格的3种方法
print("cell value = ",table.cell(1, 0).value )
print("cell value = ",table.cell_value(1, 0) )
print("cell value = ",table.row(1)[0].value )