xlrd

1 基础用法

1.1 载入

import xlrd

wb = xlrd.open_workbook(file_path)   # 打开表格

sheet1 = wb.sheets()[0]  # 定位到第一个sheet

1.2 简单读取

其中,x 代表行号,y代表序号,均是零开始的非负整数

cell_value = sheet.cell_value(x, y)  # 返回某单元格的值

row_data = sheet.row_values(x)  # 返回某一行的元素列表

col_data = sheet.col_values(y)  # 返回某一列的元素列表

 

cell_value1 = sheet.row_values(x)[y]   也是返回某单元格的值

cell_value2 = sheet.col_values(y)[x] 也是返回某单元格的值

1.3 可能存在问题

xlrd模块在1.2版本后不支持xlsx, 若需要安装早期版本.

 

2 xlrd 解析excel中日期格式的单元格

2.1

excel中日期格式的单元格,实际上以 '浮点数'的形式存储在单元格中,并不存在'日期'数据类型.

存在一个时间基准(datemode), 不同的时间基准加上浮点数得到实际的日期. 如:0代表1900-01-01为基准

 

2.2

方法1 xlrd.xldate_as_tuple()
:param xldate: The Excel number
:param datemode: 0: 1900-based, 1: 1904-based. 根据源码提示,第二个参数输入数字0或1
返回元组(year, month, day, hour, minute, second)


方法2 xlrd.xldate_as_datetime()
"""
Convert an Excel date/time number into a :class:`datetime.datetime` object.

:param xldate: The Excel number
:param datemode: 0: 1900-based, 1: 1904-based.

:returns: A :class:`datetime.datetime` object. 源码意思: 返回一个datetime类型的数据
"""

 

参考: Python xlrd读取、处理excel日期类型_xldate_as_tuple_林西河的博客-CSDN博客

 

posted @ 2023-08-02 14:22  tslam  阅读(42)  评论(0编辑  收藏  举报