如何生成Python时间戳到我的格式?

x4shl7ld  于 2023-04-08  发布在  Python
关注(0)|答案(1)|浏览(83)

如何在Python中生成这种格式的时间戳?'2023-03- 24 T12:02:20.1273789+01:00'

formatted_timestamp = datetime.strptime(timestamp_string, '%Y-%m-%dT%H:%M:%S.%f%z').strftime(
                '%Y-%m-%d %H:%M:%S')

这个返回

error: time data '2023-03-24T12:02:20.1273789+01:00' does not match format '%Y-%m-%dT%H:%M:%S.%f%z'
cpjpxq1n

cpjpxq1n1#

所以这个timestamp_string的问题是微秒数- datetime期望它不超过6。
要解决这个问题,可以使用dateutil

from dateutil import parser

s = "2023-03-24T12:02:20.1273789+01:00"
res = parser.parse(s)
formatted_timestamp = res.strftime("%Y-%m-%d %H:%M:%S")

或者先格式化你的timestamp_string

from datetime import datetime
import re

timestamp_string = "2023-03-24T12:02:20.1273789+01:00"
clean_timestamp = re.sub(r"\d\+", "+", timestamp_string)

formatted_timestamp = datetime.strptime(clean_timestamp, "%Y-%m-%dT%H:%M:%S.%f%z").strftime("%Y-%m-%d %H:%M:%S")

相关问题