猿问

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

我正在尝试从 Excel 文件中读取持续时间字段,但我得到的是 datetime 类型,而不是 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


胡说叔叔
浏览 201回答 1
1回答

慕田峪9158850

我认为这个解决方案对你有用,也许你需要调整格式但类型是 timedeltacell = worksheet.cell(row=1, column=1)print(cell.value) #1900-01-01 14:12:40s = cell.value-datetime.datetime(1899,12,30)print(s) #2 days, 14:12:40print(type(s)) #<class 'datetime.timedelta'>问题是 Excel 有一个自定义类型,当您输入该格式时,它会从 1900 年开始将其转换为该格式
随时随地看视频慕课网APP

相关分类

Python
我要回答