我试图在Python中将字符串转换为日期格式。
我正在使用以下声明
datetime_obj = datetime.datetime.strptime("Sun Aug 19 16:24:31 PDT 2018", "%a %b %d %H:%M:%S %Z %Y")
但是,我收到一个错误 -
ValueError:时间数据'Sun Aug 19 16:24:31 PDT 2018'与格式'%a%b%d%H:%M:%S%Z%Y'不匹配
如果我从日期字符串和格式字符串中删除时区,代码就可以完美运行。这让我相信这个问题与时区有关,但我不确定应该采取什么行动。我在东部时区,字符串中的时区位于太平洋时区。
感谢任何帮助。
正如this answer中提到的,你可以使用python-dateutil:
>>> from dateutil import parser
>>> datetime_obj = parser.parse("Sun Aug 19 16:24:31 PDT 2018")
datetime.datetime(2018, 8, 19, 16, 24, 31)
标准的datetime module在解析时区时表现得非常奇怪,因为我看到有关问题的this answer有问题。