如何将面向区域的日期字符串和小时字符串转换为日期时间



我有两个字符串一个:date='2021-12-30T23:00Z',其中Z表示UTC时区,23:00表示小时。我还有一个小时字符串hour='3'。我想要的是将date转换为datetime对象,并将这个小时字符串作为delta添加到date中。结果,我得到了一个带有hour:'2021-12-31T02:00Z'的datetime对象。我尝试了函数datetime.datetime.fromisoformat((,但没有成功。

使用strftime及其格式。

from datetime import datetime, timedelta
date='2021-12-30T23:00Z'
date = datetime.strptime(date, '%Y-%m-%dT%H:%MZ')
new_date = date + timedelta(hours=3)
new_date = new_date.strftime('%Y-%m-%dT%H:%MZ')
print(new_date)

输出:

2021-12-31T02:00Z

您可以这样做:

from datetime import datetime
from datetime import timedelta

date = "2021-12-30T23:00Z"
hour = "3"
d = datetime.strptime(date, "%Y-%m-%dT%H:%M%z") + timedelta(hours=int(hour))
print(d)

输出:

2021-12-31 02:00:00+00:00

最新更新