有没有办法使用Python openpyxl从excel读取持续时间类型字段?

2024-02-10

我正在尝试从 Excel 文件读取持续时间字段,但我得到的是日期时间类型,而不是 timedelta 类型。因此,当持续时间值超过 24 小时时,python openpyxl 无法正确读取该字段。有没有使用 Python openpyxl 读取持续时间字段的正确方法?

import openpyxl

workbook = openpyxl.load_workbook('./files/file.xlsx')
worksheet = workbook.active

cell = worksheet.cell(row=2, column=9)
print(cell.value)

Excel文件中的单元格(行=2,列=9)值为38:12:40,但打印输出:

1900-01-01 14:12:40

Excel 文件中的单元格格式代码 - [HH]:MM:SS


我认为这个解决方案适合你,也许你需要调整格式,但类型是 timedelta

cell = worksheet.cell(row=1, column=1)
print(cell.value) #1900-01-01 14:12:40
s = cell.value-datetime.datetime(1899,12,30)
print(s) #2 days, 14:12:40
print(type(s)) #<class 'datetime.timedelta'>

问题是 Excel 有一种自定义类型,当您输入该格式时,它会从 1900 年开始将其转换为该格式

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

有没有办法使用Python openpyxl从excel读取持续时间类型字段? 的相关文章

随机推荐