gpt4 book ai didi

python - 在Python中转换 "yyyy-MM-dd' T'HH :mm:ss. SSSZ"格式的时间戳

转载 作者:太空宇宙 更新时间:2023-11-03 15:19:23 25 4
gpt4 key购买 nike

我有一个日志文件,其时间戳类似于“2012-05-12T13:04:35.347-07:00”。我想将每个时间戳转换为一个数字,以便我根据时间按升序对它们进行排序。

我如何在 Python 中执行此操作?在 Java 中,我发现我可以使用 SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ") 为这种格式转换时间戳,但是对于 Python,我找不到任何东西.

最佳答案

由于 py2.x 对 %z 指令有问题,你必须这样做:

from datetime import timedelta,datetime
strs = "2012-05-12T13:04:35.347-07:00"
#replace the last ':' with an empty string, as python UTC offset format is +HHMM
strs = strs[::-1].replace(':','',1)[::-1]

由于 datetime.striptime 不支持 %z(UTC 偏移量)(至少在 py2.x 中不支持),因此您需要解决方法:

#Snippet taken from http://stackoverflow.com/a/526450/846892
try:
offset = int(strs[-5:])
except:
print "Error"

delta = timedelta(hours = offset / 100)

现在将格式应用于:'2012-05-12T13:04:35.347'

time = datetime.strptime(strs[:-5], "%Y-%m-%dT%H:%M:%S.%f")
time -= delta #reduce the delta from this time object
print time
#2012-05-12 20:04:35.347000

关于python - 在Python中转换 "yyyy-MM-dd' T'HH :mm:ss. SSSZ"格式的时间戳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17494250/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com