龙空技术网

python 模块xlrd 读取.xls文件

局外人LZ 54

前言:

眼前各位老铁们对“xlrd判断单元格为空”大致比较关切,同学们都需要分析一些“xlrd判断单元格为空”的相关内容。那么小编在网摘上汇集了一些关于“xlrd判断单元格为空””的相关知识,希望小伙伴们能喜欢,大家快快来学习一下吧!

Python操作Excel的模块有很多,并且各有优劣,不同模块支持的操作和文件类型也有不同。下面是各个模块的支持情况:

xlwt:xlwt 写入.xls文件openpyxl:openpyxl 读取写入.xlsx文件

模块

.xls

.xlsx

读取

写入

修改

保存

样式

图片

xlrd

支持

不支持

支持

不支持

不支持

不支持

不支持

不支持

xlwt

支持

不支持

不支持

支持

不支持

支持

支持

支持

xlutils

支持

不支持

不支持

支持

支持

支持

不支持

不支持

xlwings

支持

支持

支持

支持

支持

支持

支持

支持

openpyxl

不支持

支持

支持

支持

支持

支持

支持

支持

pandas

支持

支持

支持

支持

不支持

支持

不支持

不支持

一、安装

pip install xlrd

二、基本使用

import xlrdworkbook = xlrd.open_workbook('excel2.xls') #打开Excel文件,并返回Workbook对象sheet = workbook['sheet1'] #获取工作表for row in range(1,sheet.nrows): #获取每行数据    print(sheet.row_values(row,1))for col in range(1, sheet.ncols): #获取每列数据    print(sheet.col_values(col, 1))
import xlrdwith xlrd.open_workbook('excel2.xls') as workbook:    sheet = workbook['sheet1'] #获取工作表    for row in range(1,sheet.nrows):        print(sheet.row_values(row,1))    for col in range(1, sheet.ncols):        print(sheet.col_values(col, 1))

三、方法及属性

xlrd.open_workbook(filename, formatting_info=False, on_demand=False, ragged_rows=False) 打开 Excel 文件并返回一个 Workbook 对象

import xlrd'''filename:Excel 文件的路径或文件对象。formatting_info:是否读取单元格的格式信息,默认为 False。on_demand:是否在需要时才加载工作表,默认为 False,即一次性加载所有工作表。ragged_rows:是否允许不完整的行,默认为 False。'''workbook = xlrd.open_workbook('excel2.xls') #打开Excel文件,并返回Workbook对象sheet = workbook['sheet1'] #获取工作表
xlrd.xldate_as_datetime(xldate, datemode) Excel 中的日期值转换为datetime 对象
import xlrdworkbook = xlrd.open_workbook('excel2.xls')sheet = workbook['sheet1'] #获取工作表date_value = sheet.cell_value(0, 0)'''将日期值转换为 datetime 对象xldate:Excel 中的日期值,通常是一个浮点数。datemode:日期模式,用于解释 Excel 中的日期值。默认为xlrd.XL_DATEMODE_1900workbook.datemode 表示 Excel 文件的日期模式,xlrd.XL_DATEMODE_1900或xlrd.XL_DATEMODE_1904xlrd.XL_DATEMODE_1900 表示使用 1900 年日期模式xlrd.XL_DATEMODE_1904 表示使用 1904 年日期模式'''date = xlrd.xldate_as_datetime(date_value, workbook.datemode)print(date)  # 输出转换后的日期
workbook.datemode 表示 Excel 文件的日期模式workbook.nsheets 返回工作簿中的工作表数量workbook.sheet_names() 方返回工作簿中所有工作表的名称列表workbook.sheet_by_name(sheet_name) 根据工作表名称获取工作表对象workbook.sheet_by_index(sheet_index) 根据工作表索引获取工作表对象workbook.release_resources() 释放资源并使用del语句删除工作簿对象,从而关闭文件sheet.nrows 返回工作表中的行数sheet.ncols 属返回工作表中的列数sheet.row_values(rowx, start_colx=0, end_colx=None) 返回指定行的数据列表sheet.col_values(colx, start_rowx=0, end_rowx=None) 返回指定列的数据列表sheet.cell(rowx, colx) 返回指定行列位置的单元格对象
import xlrdworkbook = xlrd.open_workbook('excel2.xls') #打开Excel文件,并返回Workbook对象sheet = workbook['sheet1'] #获取工作表'''返回单元格的数据类型xlrd.XL_CELL_TEXT:文本本类型的单元格xlrd.XL_CELL_EMPTY:空单元格xlrd.XL_CELL_NUMBER:数字类型的单元格xlrd.XL_CELL_DATE:日期类型的单元格xlrd.XL_CELL_BOOLEAN:布尔类型的单元格xlrd.XL_CELL_ERROR:错误类型的单元格xlrd.XL_CELL_BLANK:空白单元格'''print(sheet.cell(1,1).ctype) print(sheet.cell(1,1).value) #返回单元格的值
sheet.cell_value(rowx, colx) 返回指定行列位置的单元格值sheet.sheet_loaded(sheet_name_or_index) 检查指定的工作表是否已加载sheet.unload_sheet(sheet_name_or_index) 卸载指定的工作表,释放内存sheet.cell_type(rowx, colx) 返回指定行列位置的单元格数据类型sheet.cell_xf_index(rowx, colx) 返回指定行列位置的单元格的样式索引sheet.row(rowx) 返回指定行的 Row 对象,用于获取行的其他属性和方法sheet.col(colx) 返回指定列的 Column 对象,用于获取列的其他属性和方法

标签: #xlrd判断单元格为空