【发布时间】:2021-04-14 14:26:24
【问题描述】:
我搜索了近2天,如何转换这种时间戳格式: 2018-07-11T10:40:09+00:00 从 excel 单元格收集到一个纪元?
我使用的代码是这样的:
import openpyxl
import datetime
from datetime import date, datetime, time
path = "/home/UbuntuUser/Desktop/Times.xlsx"
wb_obj = openpyxl.load_workbook(path)
sheet_obj = wb_obj.active
cell_obj = sheet_obj.cell(row = 2, column = 3)
print(cell_obj.value)
print(datetime.fromisoformat(cell_obj.value))
print(time.mktime(datetime.fromisoformat(cell_obj.value)))
这不起作用! (来源:https://www.kite.com/python/answers/how-to-convert-the-current-date-to-an-epoch-timestamp-in-python 和 https://www.geeksforgeeks.org/python-reading-excel-file-using-openpyxl-module/)
我读了这篇文章:How to convert python timestamp string to epoch?
我尝试使用此代码:
from datetime import datetime
p = '%Y-%m-%dT%H:%M:%S.%fZ'
mytime = "2009-03-08T00:27:31.807Z"
epoch = datetime(1970, 1, 1)
print((datetime.strptime(mytime, p) - epoch).total_seconds())
但是我读到的格式不一样,而且不起作用...有什么想法吗??
【问题讨论】:
-
通常 Excel 不会将日期存储为字符串,而是将其存储为从纪元开始的天数。只需乘以每天的秒数就可以得到你想要的。