from datetime import datetime
import pytz
dt_input = datetime.fromisoformat('2021-06-24 06:33:06-07:00')
print(dt_input) # prints datetime in input timezone
local_tz = pytz.timezone('Asia/Kolkata') #provide your timezone here
dt_local = dt_input.astimezone(local_tz)
print(dt_local) #prints in your local timezone as provided above
^{} 方法将返回一个
datetime
对象,该对象具有相同的UTC时间,但位于本地时区。对于您的示例时间:由于带有
tzinfo
的datetime.datetime
对象是时区感知的,因此不管如何,信息都将存储在对象中。这只是一种获取当地时间的简便方法更新,基于以下后续问题:
astimezone()
不依赖于datetime
对象的创建方式。对于不同格式的日期/时间字符串,^{datetime
对象。根据后续问题中给出的示例:您可以使用pytz库
您可以参考与您的问题类似的SO问题:
How to convert a UTC datetime to a local datetime using only standard library?
编辑:将任何字符串转换为datetime对象:
您可以使用strtime('datestring','dateformat')
您评论中的示例:
一旦转换为datetime对象,您就可以将其转换为上面提到的本地时区
相关问题 更多 >
编程相关推荐