我在字符串中有日期:
Tue Oct 04 2016 12:13:00 GMT+0200 (CEST)
我使用(根据https://docs.python.org/2/library/datetime.html#strftime-strptime-behavior):
datetime.strptime(datetime_string, '%a %b %m %Y %H:%M:%S %z %Z')
但我得到错误:
ValueError: 'z' is a bad directive in format '%a %b %m %Y %H:%M:%S %z %Z'
怎么做正确?
最佳答案 python datetime无法解析GMT部分(您可能希望以您的格式手动指定它).您可以使用dateutil代替:
In [16]: s = 'Tue Oct 04 2016 12:13:00 GMT+0200 (CEST)'
In [17]: from dateutil import parser
In [18]: parser.parse(s)
Out[18]: d = datetime.datetime(2016, 10, 4, 12, 13, tzinfo=tzoffset(u'CEST', -7200))
In [30]: d.utcoffset()
Out[30]: datetime.timedelta(-1, 79200)
In [31]: d.tzname()
Out[31]: 'CEST'