2024-04-26 22:04:38 发布
网友
我有一个数据框,它有一列格式为yyyy-mm-ddTHH:MM:SSS.000Z的日期时间
yyyy-mm-ddTHH:MM:SSS.000Z
例如,2019-06-17T19:17:45.000Z。我想用python将其转换为长类型(unix纪元时间)
2019-06-17T19:17:45.000Z
怎么做
谢谢
(如何解析ISO 8601格式的日期?这个问题与解析字符串有关。我想进行转换,因此它是不同的)
使用模块时间:
import calendar import time calendar.timegm(time.strptime('2019-06-17T19:17:45.000Z', '%Y-%m-%dT%H:%M:%S.%fZ'))
输出:1560799065
使用datetime模块fromisoformat(最有可能是fastest option)解析字符串timestamp()获取自历元以来的POSIX秒数:
datetime
fromisoformat
timestamp()
from datetime import datetime s = '2019-06-17T19:17:45.000Z' ts = datetime.fromisoformat(s.replace('Z', '+00:00')).timestamp() # 1560799065.0
或strptime具有适当的格式代码:
strptime
ts = datetime.strptime(s, '%Y-%m-%dT%H:%M:%S.%f%z').timestamp()
…或dateutil的parser.parse(速度较慢但更方便):
dateutil
from dateutil.parser import parse ts = parse(s).timestamp()
使用模块时间:
输出:1560799065
使用
datetime
模块fromisoformat
(最有可能是fastest option)解析字符串timestamp()
获取自历元以来的POSIX秒数:或
strptime
具有适当的格式代码:…或
dateutil
的parser.parse(速度较慢但更方便):相关问题 更多 >
编程相关推荐