4

我正在尝试使用 Python 从 Excel 表中读取日期/时间,但我只想读取时间,以便对其执行计算。例如,如果我的日期格式为:3/11/2003 4:03:00 AM 在我的 excel 工作表上,我如何才能4:03:00在 Python 中读取?我最终希望能够从读取时间中减去小时、分钟或秒。

4

1 回答 1

8

最好的选择是使用将日期转换为日期时间xldate_as_tuple。假设您在单元格中有一个test.xls文件:3/11/2003 4:03:00 AMA1

from datetime import datetime, timedelta
import xlrd

book = xlrd.open_workbook(filename='test.xls')
sheet = book.sheet_by_name('Sheet1')

date = sheet.cell_value(0, 0)
datetime_value = datetime(*xlrd.xldate_as_tuple(date, 0))

print datetime_value  # prints 2003-11-03 04:03:00
print datetime_value.time()  # 04:03:00
print datetime_value - timedelta(hours=1)  # prints 2003-11-03 03:03:00

希望有帮助。

于 2013-07-16T19:28:22.663 回答