如何将自定义字符串解析为时区感知日期时间?
How can I parse a custom string as a timezone aware datetime?
如何解析
18 January 2022, 14:50 GMT-5
作为时区感知日期时间。
pytz.timezone('GMT-5')
失败。
看来我可能需要解析 GMT 部分,并手动应用 5 小时偏移 post 解析?
嗯,也许吧:
import re
import datetime
foo = "18 January 2022, 14:50 GMT-5"
bar = re.sub(r"[+-]\d+$", lambda m: "{:05d}".format(100 * int(m.group())), foo)
print(datetime.datetime.strptime(bar, "%d %B %Y, %H:%M %Z%z" ))
我认为这给了你:
2022-01-18 14:50:00-05:00
如何解析
18 January 2022, 14:50 GMT-5
作为时区感知日期时间。
pytz.timezone('GMT-5')
失败。 看来我可能需要解析 GMT 部分,并手动应用 5 小时偏移 post 解析?
嗯,也许吧:
import re
import datetime
foo = "18 January 2022, 14:50 GMT-5"
bar = re.sub(r"[+-]\d+$", lambda m: "{:05d}".format(100 * int(m.group())), foo)
print(datetime.datetime.strptime(bar, "%d %B %Y, %H:%M %Z%z" ))
我认为这给了你:
2022-01-18 14:50:00-05:00