我需要掩盖从mysql(2019-08-16T10:36:03.562908 + 00:00)到06-08-2019的时间戳

时间:2019-08-16 22:27:39

标签: mysql python-3.x datetime

我使用orator在数据库表中存储created_at时间戳。当我检索此时间戳(job.created_at)时,它看起来像这样。 2019-08-16T10:36:03.562908 + 00:00

我需要将其转换为16-08-2019

我尝试过datetime.datetime

ts = str(job.created_at)
f = '%Y-%m-%d %H:%M:%S'
print(datetime.datetime.strptime(ts, f))

这是期望%Y-%m-%d%H:%M:%S,但是正在通过2019-08-16T10:36:03.562908 + 00:00,所以我得到了格式不匹配的错误。 / p>

我忘记了Python中处理日期的技巧。有相当于php的Carbon包吗?

我们将不胜感激任何帮助。

1 个答案:

答案 0 :(得分:1)

如果只需要转换字符串,请尝试将数据切成所需的格式:

unformatted_date = '2019-08-16T10:36:03.562908+00:00'
formatted_date = unformatted_date[8:10] + '-' + unformatted_date[5:7] + '-' + unformatted_date[:4]

如果要使用日期时间:

import datetime

unformatted_date = '2019-08-16T10:36:03.562908+00:00'
my_date = datetime.datetime.strptime('2019-01-04T16:41:24+0200', "%Y-%m-%dT%H:%M:%S%z")
formatted_date = my_date.strftime('%d-%m-%Y')

来源: